zoukankan      html  css  js  c++  java
  • 数组对象 级别 交集

    有以下数据:
     let a = new Set([
        {
            'categoryId': 1,
            'categoryIdLevelOne': 750611334,
            'categoryIdLevelThree': 750611336,
            'categoryIdLevelTwo': 750611335,
            'id': 2697,
            'level': 3,
            'shopId': 12430,
            'skipLayoutFlag': false,
            'status': 1
        },
        {
            'categoryId': 2,
            'categoryIdLevelOne': 750611472,
            'categoryIdLevelTwo': 750611473,
            'id': 2701,
            'level': 2,
            'shopId': 12430,
            'skipLayoutFlag': false,
            'status': 2
        },
        {
            'categoryId': 3,
            'categoryIdLevelOne': 750611487,
            'categoryIdLevelTwo': 750611488,
            'id': 2702,
            'level': 2,
            'shopId': 12430,
            'skipLayoutFlag': false,
            'status': 1
        }
    ])
    let b = new Set([
        {
            'categoryId': 2,
            'categoryIdLevelOne': 750611334,
            'categoryIdLevelThree': 750611336,
            'categoryIdLevelTwo': 750611335,
            'id': 2697,
            'level': 3,
            'shopId': 12430,
            'skipLayoutFlag': false,
            'status': 1
        },
        {
            'categoryId': 3,
            'categoryIdLevelOne': 750611472,
            'categoryIdLevelTwo': 750611473,
            'id': 2701,
            'level': 2,
            'shopId': 12430,
            'skipLayoutFlag': false,
            'status': 2
        },
        {
            'categoryId': 4,
            'categoryIdLevelOne': 750611487,
            'categoryIdLevelTwo': 750611488,
            'id': 2702,
            'level': 2,
            'shopId': 12430,
            'skipLayoutFlag': false,
            'status': 1
        }
    ])
    
    交集
    [...a].filter(x => [...b].some(y => y.categoryId === x.categoryId))
    
    //或者
    
    Array.from(a).filter(x => Array.from(b).some(y => y.categoryId === x.categoryId))
    
    差集
    
    [...a].filter(x => [...b].every(y => y.categoryId !== x.categoryId))
    
    去重
    
     this.selectTable = this.selectTable.reduce(function(item, next) {
            hash[next.id] ? "" : (hash[next.id] = true && item.push(next));
            return item;
          }, []);
  • 相关阅读:
    按需导入NavMenu无法使用情况解决办法
    如果要使用另一台电脑作为服务器,注意关掉防火墙
    mongoose学习
    koa2的学习
    vue中swiper的使用
    447. Number of Boomerangs
    33. Search in Rotated Sorted Array
    461. Hamming Distance
    392. Is Subsequence
    412. Fizz Buzz
  • 原文地址:https://www.cnblogs.com/nns4/p/11348148.html
Copyright © 2011-2022 走看看