• js 数组对象去重


     var arr = [{
          key: '01',
           value: '乐乐'
        }, {
           key: '02',
           value: '博博'
        }, {
           key: '03',
           value: '淘淘'
        },{
           key: '04',
           value: '哈哈'
        },{
           key: '01',
           value: '乐乐'
        }];

    // 方法1:利用对象访问属性的方法,判断对象中是否存在key var result = []; var obj = {}; for(var i =0; i<arr.length; i++){ if(!obj[arr[i].key]){ result.push(arr[i]); obj[arr[i].key] = true; } } console.log(result); // 方法2:利用reduce方法遍历数组,reduce第一个参数是遍历需要执行的函数,第二个参数是item的初始值 var obj = {}; arr = arr.reduce(function(item, next) { obj[next.key] ? '' : obj[next.key] = true && item.push(next); return item; }, []); console.log(arr);


    let a = this.tabsData[this.tabIndex - 1].relate_data;
    let arr = a.concat(newVal); //合并数组
    // 数组去重 arr:数组;key:根据数组中为key的键名去重
    filterArr(arr, key) {
    let hash = {};
    return arr.reduce((ss, item) => {
    hash[item[key]] ? '' : (hash[item[key]] = true && ss.push(item));
    return ss;
    }, []);
    },


    // 返回新的对象的数组
    changeArr(arr, type, name) {
    let data = [];
    arr.map(item => {
    const obj = {};
    obj.name = item[`${name}`];
    obj.res_id = item.id;
    obj.type = type;
    data.push(obj);
    });
    return data;
    },


  • 相关阅读:
    vmware 虚拟机共享 windows 目录
    下载 golang.org/x 包出错不用代理的解决办法
    c++小游戏——彩票
    恶意代码要注意
    Pascal到c++,求大佬翻译!
    【CYH-01】小奔的国庆练习赛:赛后标程
    鸽巢原理及其扩展——Ramsey定理
    区块链,你知道多少?
    go语言
    10.2:异或树经验
  • 原文地址:https://www.cnblogs.com/77yf/p/13030495.html
Copyright © 2020-2023  润新知