• JS数组操作方法大全


    一、flat

      flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回,flat() 方法会移除数组中的空项。

      var newArray = arr.flat([depth])

      depth 可选指定要提取嵌套数组的结构深度,默认值为 1。

      //使用 Infinity,可展开任意深度的嵌套数组

      var arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];

      arr4.flat(Infinity);

      // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

      手动实现flat:

    // 第一种
    ary = str.replace(/([]))/g,
    '').split(',');
    // 第二种
    str = str.replace(/([]))/g, '');
     str = '[' + str + ']';
     ary = JSON.parse(str);
     // 第三种
     let result = [];
     let fn = function(ary) {
      for(let i = 0; i < ary.length; i++) }{
        let item = ary[i];
        if (Array.isArray(ary[i])){
          fn(item);
        } else {
          result.push(item);
        }
      }
     }

     二、filter

    filter()函数用于过滤序列,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

    数组的filter方法只要return true,就会返回当前项,重新组成一个新的数组,不会修改原数组
    Talk is cheap,show me the code
  • 相关阅读:
    商业即生活,一些思考和感悟
    Unity中使用摇杆控制
    在家乡做什么生意比较好?且看雷家第一智囊的分析
    Android5.0之Toobar的使用
    Android5.0常用颜色属性说明
    hiho week 38 P1 : 二分·二分答案
    CCF模拟题 字符串匹配
    CCF模拟题 最优配餐
    CCF模拟题 相反数
    CCF模拟题 最优灌溉
  • 原文地址:https://www.cnblogs.com/qc-one/p/14865742.html
Copyright © 2020-2023  润新知