在下面reduction + map
操作,没有。 3让我很困惑。谁能解释一下为什么
// 1
[1,2,3,4,5].filter(x => x==3).reduce((x, y) => y) // -> 3, all good
// 2
[1,2,3,4,5].filter(x => x<=3).reduce((x, y) => 0) // -> 0, still good
// 3
[1,2,3,4,5].filter(x => x==3).reduce((x, y) => 0) // -> 3, hello?
换句话说:为什么数组中一个元素的减少会忽略映射到0
手术?这最终将用于对象数组,如.reduce((x,y) => y.attr)
这也返回y
代替y.attr
对于单元素数组。