警报信息错误

时间:2017-03-01 00:18:35

标签: javascript jquery

我目前刚接触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");
    }

2 个答案:

答案 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!");
}