是否有一种简便的方法来满足所有可能的组合,而不必手动编写所有这些if语句?
var ups;
var trans;
var sat;
var kplc;
if(ups === 'false' && trans ==='true'&& sat ==='true' && kplc ==='true'){
//do something
}
if(ups === 'true' && trans ==='true'&& sat ==='true' && kplc ==='true'){
//do something
}
if(ups === 'false' && trans ==='false'&& sat ==='true' && kplc ==='true'){
//do something
}
if(ups === 'false' && trans ==='true'&& sat ==='false' && kplc ==='true'){
//do something
}
////and so forth and so forth....
如果需要检查所有值是否都通过相同的谓词,则可以将所有值放入数组中并使用Array.prototype.every。
let foo = true
let bar = true
let baz = false
if ([foo, bar, baz].every(value => value === true)) {
console.log('condition passed')
}
同样要检查其中至少一个是否通过谓词,请使用Array.protoype.some
let foo = true
let bar = true
let baz = false
if ([foo, bar, baz].some(value => value === true)) {
console.log('condition passed')
}