当前位置:  开发笔记 > 编程语言 > 正文

在数组数组的map()中使用reduce()

如何解决《在数组数组的map()中使用reduce()》经验,为你挑选了1个好方法。

我正在进行freecodecamp挑战,我想知道为什么我的代码不起作用以及如何纠正它.

目标是"返回由每个提供的子阵列中最大数字组成的数组".

我的尝试是使用reduce作为map函数映射输入数组:

function largestOfFour(arr) {
    arr = arr.map(function(innerArray){
       innerArray = innerArray.reduce(function(previousValue,currentValue){
           return currentValue > previousValue ? currentValue : previousValue;
       });
    });
    return arr;
}

console.log(largestOfFour([[4, 5, 1, 3],[1, 2, 3, 4]]));

目前的输出是: [undefined, undefined]

我该如何修复我的代码?



1> Oriol..:

map回调中,您应该返回以下结果reduce:

function largestOfFour(arr) {
  return arr.map(function(innerArray){
    return innerArray.reduce(function(previousValue,currentValue){
      return currentValue > previousValue ? currentValue : previousValue;
    });
  });
}

请注意,有更短的方法.

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有