• 数组对象 级别 交集


    有以下数据:
     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;
          }, []);
  • 相关阅读:
    Minimum Sum
    Prefix and Suffix
    BBuBBBlesort!
    Wanna go back home
    The Chosen One+高精度
    一元三次方程
    文本文件比对
    nginx日志文件切割
    nginx启动脚本
    nginx
  • 原文地址:https://www.cnblogs.com/nns4/p/11348148.html
Copyright © 2020-2023  润新知