• 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;
    },


  • 相关阅读:
    程序员最艰难的十大任务
    ssh(安全外壳协议)
    数据库备份 计划任务
    计划任务 crontab
    数据库设计二
    mysql存储过程详解[转]
    Java开发必装的IntelliJ IDEA插件
    SQLYog快捷键大全
    HTTP深入浅出 http请求
    浏览器HTTP请求分析
  • 原文地址:https://www.cnblogs.com/77yf/p/13030495.html
Copyright © 2020-2023  润新知