zoukankan      html  css  js  c++  java
  • JS中的reduce()详解

    reduce()作为一个循环使用。接收四个参数:初始值(上一次返回值),当前元素值,当前元素下标,原数组。

    应用  作为累加器使用

      
    var a=[4,5,6,7,8]
    //item代表一次回调的值 初始值为0
    //cart代表当前元素的值
    //index当前下标
    //arr原数组
    var num=a.reduce((item,cart,index,arr)=>{
        return item+=cart
    },0)
    //初始值为0
    console.log(num)
    //输出为30
      
    以上结果回调被调用用5次分别是
    name item cart index arr Output
    第一次 0 4 0
    [4,5,6,7,8]
    4
    第二次 4 5 1
    [4,5,6,7,8]
    9
    第三次 10 6 2
    [4,5,6,7,8]
    15
    第四次 15 7 3
    [4,5,6,7,8]
    22
    第五次 22 8 4
    [4,5,6,7,8]
    30
     
    还可以利用reduce来计算一个字符串中每个字母出现次数
     
            var str = 'asfadewqqfh';
            var obj = str.split('').reduce((item,cart) => {
                //三元运算符
                item[cart] ? item[cart] ++ : item[cart] = 1
                return item
            },{})
            console.log(obj)//以上结果输出为a: 2 d: 1 e: 1 f: 2 h: 1 q: 2 s: 1 w: 1    
      
  • 相关阅读:
    NGINX-HTTPS
    README
    SSH
    Ubuntu
    Python复利
    Python全双工聊天
    Python半双工聊天
    Python网络编程
    使用Python PIL库中的Image.thumbnail函数裁剪图片
    Python模块 os.walk
  • 原文地址:https://www.cnblogs.com/dcyd/p/12341885.html
Copyright © 2011-2022 走看看