我有一个api,可在数组内返回单个布尔值。 如何在条件内分解变量?
let condition = [true];
if (...condition) {
// do stuff
}
我知道我可以使用condition[0]
,但采用类似destruct-ish的解决方案似乎更合理,因为如果数组包含多个值,则可以对每个值进行求值(let condition = [true, true, true]
)。
答案 0 :(得分:4)
您可以使用Array.prototype.every
:
> [true, true].every(x => x)
true
> [true, false].every(x => x)
false
所以:
let condition = [true, true, true];
if (condition.every(x => x)) {
// do stuff
}
答案 1 :(得分:3)
只需将变量作为数组即可。
let [condition] = [true];
对于多个vlaues,您可以采用更多变量,例如
let [cond1, cond2, cond3] = [true, false, true];