一个数组具有多个数字值,我需要在中间找到一个零值以返回true。
对于我的输出,我得到:
false '<-- should be false'
false '<-- should be true'
并且无法弄清楚为什么true不会返回true。
我也尝试过
if (numbers === 1 && numbers === 2 && numbers === 3) {
doesArrayContainZero = false;
} else if (numbers === 1 && numbers === 0 && numbers === 2) {
doesArrayContainZero = true;
}
认为我可能需要更具体地说明每个数字,但不是那样。
下面是我当前答案的问题。我不知道为什么它不正确。
function doesArrayContainZero(numbers) {
if (numbers = [1,2,3]) { return false;}
else if (numbers = [1,0,2]) {
return true;
}
}
/* Do not modify code below this line */
console.log(doesArrayContainZero([1, 2, 3]), '<-- should be false');
console.log(doesArrayContainZero([1, 0, 2]), '<-- should be true');
答案 0 :(得分:0)
您可以使用“包含”,也可以使用与旧版浏览器兼容的“ indexOf”。
var without0 = [1, 2, 3];
var with0 = [1, 0, 2];
function doesArrayContainZero(numbers) {
return numbers.indexOf(0) !== -1;
}
console.log(doesArrayContainZero(without0));
console.log(doesArrayContainZero(with0));
答案 1 :(得分:0)
非常简单的解决方案,包括使用es6函数。 https://developer.mozilla.org/pl/docs/Web/JavaScript/Referencje/Obiekty/Array/includes
num==3