[英]What's wrong with this JavaScript If statement?
我正在嘗試構建一個基本的Rock,Paper和Scissors游戲,任何人都可以向我提示為什么if語句被拒絕。
var rps = function(input1, input2){
if (input1="paper" && input2="rock") {
console.log("Player 1 wins!");
};
};
等號應為==
而不是=
var rps = function(input1, input2){
if (input1=="paper" && input2=="rock") {
console.log("Player 1 wins!");
}
};
首先,使用==
not =
完成比較
第二,在if末尾刪除分號。
if語句不需要分號!
函數rsp(input1,input2){如果(input1 ==“ paper” && input2 ==“ rock”){alert(“播放器1獲勝!”); };
您正在分配不評估。 這應該使紙,石頭,剪刀游戲變得有趣:
var prsStatements = {
paperBeatsRock: 'Paper Beats Rock',
rockBeatsScissors: 'Rock Beats Scissors',
scissorsBeatsPaper: 'Scissors Beats Paper',
seperator: ' - ',
player1wins: 'Player One Wins!',
player2wins: 'Player Two Wins!',
tie: "It's a Tie!"
}
function prs(in1, in2){
var p = /^paper$/i, r = /^rock$/i, s = /^scissors$/i, in2r = new RegExp(in2, 'i'), prss = prsStatements, sep = prss.seperator;
if(in1.match(p) && in2.match(r)){
return prss.paperBeatsRock+sep+prss.player1wins;
}
else if(in2.match(p) && in1.match(r)){
return prss.paperBeatsRock+sep+prss.player2wins;
}
else if(in1.match(r) && in2.match(s)){
return prss.rockBeatsScissors+sep+prss.player1wins;
}
else if(in2.match(r) && in1.match(s)){
return prss.rockBeatsScissors+sep+prss.player2wins;
}
else if(in1.match(s) && in2.match(p)){
return prss.scissorsBeatsPaper+sep+prss.player1wins;
}
else if(in2.match(s) && in1.match(p)){
return prss.scissorsBeatsPaper+sep+prss.player2wins;
}
else if(in1.match(in2r)){
return prss.tie;
}
}
現在,您不必擔心區分大小寫的問題,並且可以更改輸出!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.