zoukankan      html  css  js  c++  java
  • es6中reduce()方法和reduceRight()方法

    es6中reduce()方法
    从左往右开始

    参数:
    prev:它是上一次调用回调时返回的结果,每次调用的结果都会给prev

    cur:当前的元素

    index:当前的索引

    arr:循环的数组

    返回值:
    函数累计处理的结果

    demo:
    求数组的和。

    var a = [1,2,3,4,5,6,7,8,9,10]
    
    var str = a.reduce(function(prev,cur,index,arr){
    return prev + cur ;
    })
    str // 55;


    求阶乘

    var a = [1,2,3,4,5,6,7,8,9,10]
    
    var str = a.reduce(function(prev,cur,index,arr){
    return prev * cur ;
    })
    
    str //3628800


    求幂

    新增的一个运算符 

    A ** B;
    
    var a = [2,3,4];
    
    var str = a.reduce(function(prev,cur,index,arr){
    return prev ** cur ;
    })
    
    str // 4096
    将二维数组转换成一维
    
    
    str //(10) [0,1, 2, 3, 4, 5, 6, 7, 8, 9]
     数组去重
    
    var arr = [1,2,1,2,3,5,4,5,3,4,4,4,4];
    var str = arr.sort().reduce((prev, cur)=>{
    if(prev.length===0 || prev[prev.length-1]!==cur){
    prev.push(cur);
    }
    return prev;
    }, []);
    str // (5) [1, 2, 3, 4, 5]

    es6中reduceRight()方法
    从右往左开始

    参数和上面是一样。

    结果都是一样的我就不写代码了

  • 相关阅读:
    手打AC的第2道数位DP:BZOJ1799: [Ahoi2009]self 同类分布
    Oracle PL/SQL编程基础
    Oracle高级查询,事物,过程及函数
    缓存技术
    图形化报表
    网站配置与部署
    Oracle 空间管理
    Oracle 10g体系结构及安全管理
    ORACLE 数据库概述
    jQuery中的Ajax应用
  • 原文地址:https://www.cnblogs.com/sexintercourse/p/11802480.html
Copyright © 2011-2022 走看看