use*_*180 3 javascript if-statement
我想if在javascript中动态创建语句的条件,
检查我的代码
var t = ['b','a']
if(t[0] !== 'a' && t[1] !== 'a'){console.log('remaining element')}
Run Code Online (Sandbox Code Playgroud)
在这里t可能会随时变化t = ['b','a','c']然后我需要写这样的条件
if(t[0] !== 'a' && t[1] !== 'a' && t[2] !== 'a'){console.log('remaining element')}
Run Code Online (Sandbox Code Playgroud)
我怎样才能有效地重写这段代码?
你可以Array.prototype.every像这样使用
if (t.every(function(currentElement) { return currentElement !== "a"; })) {
console.log('remaining element');
}
Run Code Online (Sandbox Code Playgroud)
这适用于任意数量的元素.
在不支持的旧环境中Array.prototype.every,您可以使用plain for循环版本
var flag = true;
for (var i = 0 ; i < t.length; i += 1) {
if (t[i] === "a") {
flag = false;
break;
}
}
if (flag) {
console.log('remaining element');
}
Run Code Online (Sandbox Code Playgroud)