【问题标题】:In javascript why this reduce method of an array gives this output in below code?在javascript中,为什么这个数组的reduce方法在下面的代码中给出了这个输出?
【发布时间】:2021-12-26 17:17:25
【问题描述】:

var check = [1,2,3,4,5];

var check1 = check.reduce((accumulator,element,index,array) => element )

console.log(check1);
//output :5. Why?

【问题讨论】:

  • 它将最终结果(累加器)减少到返回的内容。由于您没有将element 添加(连接)到累加器中,因此最后剩下的唯一结果是数组中的最后一个元素 - 5。
  • 因为你总是返回元素而不是累加器。阅读减少可能是一个好主意-> developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
  • 为了扭转这个问题,你为什么认为它不应该返回5
  • 为什么会给出输出?因为这就是 reduce 的工作原理。查看文档以了解 reduce 的作用。您可能还需要查看粗箭头的作用。

标签: javascript arrays methods callback reduce


【解决方案1】:

这是故意的!这是因为你的 reducer 正在返回数组中的每个项目(你的 element 参数),一旦我们到达末尾,我们将返回最后一个项目(恰好是 5)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-06
    相关资源
    最近更新 更多