数组去重

40 阅读1分钟
const uniq = arr =>{
    // 方法1 set
    return [...new Set(arr)]
    // 方法2 {}
    let map = {}
    let res = []
    for(let i = 0; i < arr.length; i++){
        let number = arr[i]
        if(map[number]){
            continue
        }
        map[number] = true
    }
    for(let key in map){
        res.push(parseInt(key))
    }
    return res
    // 方法3 Map
    let map = new Map()
    for(let i = 0; i < arr.length; i++){
        let number = arr[i]
        if(map.has(number)){
            continue
        }
        map.set(number,true)
    }
    return [...map.keys()]
}

// 验证
let arr = [1,2,2,3,3,4,"1"]
console.log('uniq',uniq(arr))