JavaScript - 检查数组中的所有值是否都为空 - Array / Each /

时间:2016-03-09 15:04:59

标签: javascript jquery arrays null

在JavaScript / JQuery中使用TicTacToe。初学程序员但无法在网上找到。

目前我有一个名为“game_board”的普通数组。该数组有9个值,即0-8。它不是'哈希'。

我正在寻找一个循环或类似的东西来检查数组中的所有值是否都不为空。如果“game_board”数组中的所有值都不是Null,则代码应该执行诸如[Alert(“Draw”)]之类的操作。如果数组中的任何值都有值,则函数不应该执行任何操作。

这是我的代码尝试。任何想法都会令人敬畏。我的尝试是如果找到空值,循环中断的理论。如果找不到空值,则转到ELSE并报告'draw'

    // check draw
for (var p = 0; p < 9; p++) { 
    if (game_board[p] === null) {
        break;
    }
    else {
        alert("Draw");
    }
}

非常感谢。我知道这可能是一个基本问题,但感谢任何答案。

请原谅我的新意!不是100%肯定逻辑。也许Jquery的东西会有所帮助!

1 个答案:

答案 0 :(得分:11)

使用Array.some检查是否有任何值null

var isAtLeastOneNull = game_board.some(function(i) { return i === null; });

或者,使用Array.every进行反向检查:

var areAllNotNull = game_board.every(function(i) { return i !== null; });

演示:

&#13;
&#13;
var game_board = [true, true, true, true, true, true, true, null, true];

document.writeln('There is at least one null item: ' + game_board.some(function(i) { return i === null; }));
document.writeln('<br />');

game_board = [true, true, true, true, true, true, true, true, true];

document.writeln('There is at least one null item: ' + game_board.some(function(i) { return i === null; }));
&#13;
&#13;
&#13;