javascript - 正在处理 JS 作业(函数、数组等)——有几个问题

标签 javascript arrays function console

(免责声明:我对 JS 很陌生)

大家好,

我正在开发一款游戏,你可以随机选择两张牌,根据结果你会看到一个弹出窗口。我一直按照一组说明来完成它。

我有两个问题:

A.在控制台中我收到一条错误消息:

SyntaxError: missing ; before statement

它指的是第 7 行的 } else {,我不知道为什么会得到它。假设我缺少一个 ; ,它会去哪里?我想我应该问一下并让另一双眼睛关注这个。

B.说明说我应该在控制台中看到“用户翻转皇后”和“用户翻转国王”,但我没有。

如果问题 1 中的问题得到解决,我会看到他们吗?如果没有,那我该怎么办?

  • 谢谢!
  • 沙丁鱼

    var cards = ["queen", "queen", "king", "king"];
    var cardsInPlay = [];
    
    var checkForMatch = function() {
        if (cardsInPlay[0] === cardsInPlay[1]) 
            alert('You found a match!');
        } else {
            alert('Sorry, try again.');      
    }
    
    var flipCard = function(cardId) {
        console.log("User flipped " + cards[cardId]);
        cardsInPlay.push(cards[0]);
        if (cardsInPlay.length === 2) {
            checkForMatch();
        }
    
        flipcard(0);
        flipcard(2);
    

最佳答案

A.您缺少 if block 开头的 {else 末尾的 } block 。

var checkForMatch = function() {
    if (cardsInPlay[0] === cardsInPlay[1]) { // <=== here
        alert('You found a match!');
    } else {
        alert('Sorry, try again.');
    }   
}

B.由于代码中存在语法错误,因此无法正常运行。

您还缺少 flipCard 函数末尾的 }

Javascript 是区分大小写的。由于您将函数命名为 flipCard,因此您不能将其称为 flipcard

var cards = ["queen", "queen", "king", "king"];
var cardsInPlay = [];

var checkForMatch = function() {
    if (cardsInPlay[0] === cardsInPlay[1]) { // <=== here
        console.log('You found a match!');
    } else {
        console.log('Sorry, try again.');
    }   
}
var flipCard = function(cardId) {
  console.log("User flipped " + cards[cardId]);
  cardsInPlay.push(cards[0]);
  if (cardsInPlay.length === 2) {
    checkForMatch();
  }
}

flipCard(0);
flipCard(2);

关于javascript - 正在处理 JS 作业(函数、数组等)——有几个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48290031/

相关文章:

javascript - 从 undefined 解构时避免错误

c - 使用结构和枚举洗牌

php - 当文本像数组时如何将字符串转换为数组

Python:类和内存中的函数

Python - 如何将 IF 语句转换为函数以使用其他字符串多次调用?

javascript - Angular 指令生成的链接上的 .stopPropagation() 具有嵌入功能

javascript - 为什么 getComputedStyle 不能使用像 :hover? 这样的伪类

javascript - 在模态中传递一行的 id

php - 从 mySQL 数据库中检索列并传递给数组

c++ - 如何检查一个函数是否被另一个函数调用?