美文网首页
JavaScript 高阶函数reduce

JavaScript 高阶函数reduce

作者: Molly6943 | 来源:发表于2017-06-16 18:01 被阅读0次

    用法:

    Arrayreduce()把一个函数作用在这个Array的[x1, x2, x3...]上,这个函数必须接收两个参数,reduce()把结果继续和序列的下一个元素做累积计算,其效果就是:

    [x1, x2, x3, x4].reduce(f) = f(f(f(x1, x2), x3), x4)
    

    比方说对一个Array求和,就可以用reduce实现:

    var arr = [1, 3, 5, 7, 9];
    arr.reduce(function (x, y) {
        return x + y;
    }); // 25
    

    练习:

    查找数组中数字最多的数字。如果参数数组中的两个数字具有相同的长度,则返回数组中的第一个。

    function findLongest(array){
      return array.reduce((res, curr) => (String(res).length < String(curr).length) ? curr : res);
    }
    findLongest([1, 10, 100]) //100
    

    相关文章

      网友评论

          本文标题:JavaScript 高阶函数reduce

          本文链接:https://www.haomeiwen.com/subject/ovymqxtx.html