判断一个数组对象里面是否有重复的项并且去重

137 阅读1分钟
  内容如下:
    let arr = [
        {name:'对接人',key:'1'},
        {name:'联络人',key:'2'},
        {name:'牵头人',key:'3'},
        {name:'项目联络人',key:'4'},
        {name:'对接人',key:'1'},
        {name:'项目联络人',key:'4'},
    ]
    function ArrayDeduplication(sourceArr,keyArr){
        const newArr = []
        const obj = {}
        for(const item of sourceArr){
            let keyVal = ''
            for(const key of keyArr){
                keyVal += item[key]
            }
            if(!obj[keyVal]){
                newArr.push(item)
                obj[keyVal] = true
            }
        }
        return newArr
    }
    const arr1 = ArrayDeduplication(arr,['name','key'])