我目前刚接触JavaScript并且正在学校学习!我正在通过创建一个游戏进行一项任务,但警报会一直弹出错误的警告。每次它都警告“你找到了匹配!”对于每张卡,但这不应该发生。我一直试图在最后一小时解决这个问题。感谢
var cards = ["queen", "king", "queen", "king"];
var cardsInPlay = [];
var cardOne = cards[0];
cardsInPlay.push(cardOne);
console.log("User flipped " + cardOne);
var cardTwo = cards[1];
cardsInPlay.push(cardTwo);
console.log("User flipped " + cardTwo);
if (cardsInPlay.length === 2){
cardsInPlay[0] === cardsInPlay[1];
alert("You found a match!");
} else {
alert("Sorry, try again");
}
答案 0 :(得分:2)
您的语法错误很简单。
if (cardsInPlay.length === 2){
cardsInPlay[0] === cardsInPlay[1];
通过将第二个条件置于括号{
中,您已使其无效。试试这个:
if (cardsInPly.length === 2 && cardsInPlay[0] === cardsInPlay[1]) {
条件总是在括号(
)
内。如果它在它之外,它将无法工作。
当cardsInPlay[0] === cardsInPlay[1];
不相等时键入false;
实际上就像键入{{1}}一样。它在技术上是有效的,但没有做任何事情。
答案 1 :(得分:0)
我认为你应该把条件放在下面:
if (cardsInPlay.length === 2 && cardsInPlay[0] === cardsInPlay[1]) {
alert("You found a match!");
}