ES6 map find reduce去重

a. filter(): 主要用于筛选过滤数组,返回符合筛选条件的数据,不会改变原数组。

b. map():主要用于循环遍历数组,也可以根据某些条件筛选数据,不会改变原数组。

c. find(): 主要用于查找数组的数据,只要查找到一条符合条件的数据,直接返回,不会再继续查找下去。没有找到符合条件的数据返回undefined。

转载

原文链接:https://blog.csdn.net/Weixiaohuai/java/article/details/82698708

  

 //  filter    筛选

let detailList: Array<any> = [];
        // if (isExistProvider) {
        // 明细数据
        detailList = dataList.filter(
          row =>
            row["设备厂家"] === item["设备厂家"] &&
            row["订单类型"] == item["订单类型"] &&
            row["资产归属"] == item["资产归属"]
          // && row["预期到货日期"] === item["预期到货日期"] &&
          // row["预到货识别码"] == item["预到货识别码"]
        );

    //reduce 去重

     //订单分组  
      let orderGroupList = dataList.reduce(
        (all: Array<any>, next) =>
          all.some(
            item =>
              item["货主"] == next["货主"] &&
              item["客户名称"] == next["客户名称"] &&
              item["收货人"] == next["收货人"] &&
              item["手机"] == next["手机"] &&
              item["快递公司"] == next["快递公司"] &&
              item["地址"] == next["地址"] &&
              item["订单类型"] == next["订单类型"] &&
              item["业务员"] == next["业务员"]
          )
            ? all
            : [...all, next],
        []
      );
 
 
 



原文地址:https://www.cnblogs.com/lvqianqian/p/13085068.html