【发布时间】:2020-04-02 19:08:32
【问题描述】:
给定一个数组a,如果a 中的每个值都为真,那么产生一个为真的布尔值的最简单方法是什么?
编辑:
是a.every(i => i)吗?
【问题讨论】:
给定一个数组a,如果a 中的每个值都为真,那么产生一个为真的布尔值的最简单方法是什么?
是a.every(i => i)吗?
【问题讨论】:
您可以使用Array.every,它检查您调用它的数组中的每个元素,如果每个项目都符合您作为参数传递的条件,则返回true。对于您的情况,您可以向它传递一个简短的 lambda 函数:
myArray.every(i => i)
或者简单地使用Boolean 构造函数,它会立即将你传递的任何东西变成一个布尔值。
myArray.every(Boolean)
因此数组中的每一项都调用了Boolean(item),如果每一项都返回true,那么.every()也将返回true。
【讨论】:
every 和Boolean 构造函数的简要说明会有很大帮助。