• reduce一些方法对数组进行的处理


    reduce方法我之前都整理了知识点,不懂的可以看一下我之前的知识点,这次我们是整理了一些关于用reduce方法进行的一些对于数组的处理
    1. reduce()求数组项之和
    var arr = [3, 9, 4, 3, 6, 0, 9];
    var sum = arr.reduce(function (prev, cur) {
    return prev + cur;
    },0);
    console.log(sum);
     
    2. reduce()求数组项最大值
    var arr = [3, 9, 4, 3, 6, 0, 9];
    var max = arr.reduce(function (prev, cur) {
    return Math.max(prev, cur);
    });
    console.log(max);
     
    3. reduce()实现数组去重
    indexOf() 返回值都是数组中元素所在的下标,如果没有找到则返回-1
    var arr = [3, 9, 4, 3, 6, 0, 9];
    var newArr = arr.reduce(function (prev, cur) {
    prev.indexOf(cur) === -1 && prev.push(cur);
    return prev;
    }, []);
    console.log(newArr);
     
    实现原理:
    1 初始化一个空数组
    2 将需要去重处理的数组中的第1项在初始化数组中查找,如果找不到(空数组中肯定找不到),就将该项添加到初始化数组中
    3 将需要去重处理的数组中的第2项在初始化数组中查找,如果找不到,就将该项继续添加到初始化数组中
    4 ……
    5 将需要去重处理的数组中的第n项在初始化数组中查找,如果找不到,就将该项继续添加到初始化数组中
    6 将这个初始化数组返回
     
    很多的知识点 我已经整理了很多次了  都有详细的解答哦   (づ ̄ 3 ̄)づ~
     
     
     
  • 相关阅读:
    LeetCode(123) Best Time to Buy and Sell Stock III
    LeetCode(122) Best Time to Buy and Sell Stock II
    LeetCode(147) Insertion Sort List
    360兼容模式不支持hidden属性的问题
    第一个博客,用来勉励自己,加油
    【LGR-059】洛谷7月月赛题解
    Codechef July Challenge 2019 Division 1题解
    AtCoder Grand Contest 035
    Comet OJ
    2019-7-3 感记
  • 原文地址:https://www.cnblogs.com/yeanling/p/11038266.html
Copyright © 2020-2023  润新知