终极去重方法

function dereplication(arr) {
    let obj = {} 
    return arr.filter((item, index, arr) => {
        return obj.hasOwnProperty(typeof item + item) ? false : obj[typeof item + item] = true;
    })
}
let arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}];
dereplication(arr)

这种方法直接运用的filter过滤和判断对象内是否有某个属性的方法hasOwnProperty实现的,并且hasOwnProperty里面要判断类型加上值是否存在


前端小彭
4 声望0 粉丝