zoukankan      html  css  js  c++  java
  • 关于数据的遍历方法

    forEach
    forEach遍历完整,不会中断,在其内部使用return也只是起到continue的作用,仅跳过当前这条
    arr.forEach((item, index, arr1) => {
    ...
    })
    

    map

    map 遍历完整,不中断,返回新数组
    const map1 = arr.map(x => x * 2); // 返回一个arr值的二倍数组, [1,2,3] => [2,4,6]
    

    filter

    filter遍历完整,不中断,返回新数组判断是true作为新数组的单元
    const map1 = arr.map(x => x>2); // 返回一个arr值的二倍数组, [1,2,3,5, 6, 7] => [3,5,6,7]

     

    find

    find找到第一个符合条件,中断,返回一个值   , 没找到就是undefined
    const map1 = arr.find(x => x>2); // 返回一个值, [1,2,3,5, 6, 7] => 3

     

    findIndex

    find找到第一个符合条件,中断,返回一个索引   , 没找到就是undefined
    const map1 = arr.findIndex(x => x>2); // 返回一个值, [1, 2, 3, 5, 6, 7] => 2

     

    includes

    includes 是否包含一个指定的值。它返回一个布尔值true/false。
    const map1 = arr.includes(3); // 是否含有3, [1,2,3,5, 6, 7] => true

    some

    some 找到第一个符合条件中断。它返回一个布尔值true/false。
    const map1 = arr.map(x => x>2); // 是否含有大于2的值, [1,2,3,5, 6, 7] => true

     

    every

    every 遍历完整,不中断。它返回一个布尔值true/false。
    every 都符合条件,返回一个true;否则,返回一个false
    const map1 = arr.map(x => x>2); // 是否都大于2, [1,2,3,5, 6, 7] => false

     

    reduce

    array.reduce(function(acc, cur, idx, src), initval)
    reduce 遍历完整,不中断。汇总为单个返回值

    reducer 函数接收4个参数:

    1. Accumulator (acc) (累计器)
    2. Current Value (cur) (当前值)
    3. Current Index (idx) (当前索引)
    4. Source Array (src) (源数组)
    const map1 = arr.reduce((acc, cur, idx, arr)=> {
      return acc + cur*idx
    }); // 返回一个值, 第一个数不是成为cur,二是acc的初始值,cur的第一个值是第二个数

    如果array是对象数组,但要做对象属性值的累加,可以给Accumulator (acc) (累计器)一个初始值initval

    const arr2 = [{name:'1', num:1},{name:'3',num: 8},{name:'7',num:90}]; 
    const initval = 90;
    arr2.reduce((total, currentValue, currentIndex, arr)=>{return total+currentValue.num}, initval);
    //90+1+8+90=189
    

      

     

     

  • 相关阅读:
    作业信息获取
    SQL Server数据库性能监控计数器
    c# 索引器學習
    C# DataGridView 小技巧
    C# DataTable 小技巧
    c# 小技巧
    C# new,Virtual,abstract,sealed,Override的簡單理解
    C# 位操作符
    C# 類型小技巧
    C# partial 局部类型
  • 原文地址:https://www.cnblogs.com/baixinL/p/13602694.html
Copyright © 2011-2022 走看看