【发布时间】:2023-06-17 05:05:01
【问题描述】:
我试图解决以下问题:
编写一个函数,如果所有数组元素都为真,则返回真。使用减少
这是我编的解决方案
function allTrue(values) {
if ( values[0] === false) return false
if (values.length === 0) return true
let result = values.reduce( (final, value) => final = value === true, true)
return result ? true : false
}
我的问题是,是否可以将外部条件移动到 reduce 方法的主体中。
也就是说,如果需要我用一个reduce方法来解决,我可以实现吗?
我尝试在 reduce 中操作 final,但稍后在下一次迭代中对其进行了修改
例如下面的测试应该返回 false 但返回 true
allTrue([false, true])
任何解释将不胜感激,谢谢
【问题讨论】:
-
是
reduce必须吗?如果不是,为什么不能使用every让生活更轻松的方法:) -
@Codenewbie 这可能是一个功课,所以是的,即使
every更好,他们仍然应该使用reduce,只是为了学习如何使用它。
标签: javascript arrays reduce