js数组去重的几种方法

简单记录下js中数组去重的几种方法:

方法一:利用es6新增的数据类型set

//set最大的特点是数据不重复,可以接受一个数组或一个数组对象作为参数来初始化,该特性也可以给数组去重
function fillterArr(arr){
    return ([...new Set(arr)]);
}

方法二:es6的set + array.from

function fillterArr(arr){
    return Array.from(new Set(arr));
}

方法三:利用sort排序

function fillterArr(arr){
    var newArr = [];
    arr.sort();
    for(var i = 0; i < arr.length; i++){
        arr[i] == arr[i-1] ? newArr : newArr.push(arr[i]);
    }
    return newArr;
}

方法四:利用indexOf

function fillterArr(arr){
    var newArr = [];
    for(var i = 0; i < arr.length; i++){
        newArr.indexOf(arr[i]) === -1 ? newArr.push(arr[i]) : newArr;
    }
    return newArr;
}

方法五:利用reduce函数

function fillterArr(arr){
        return arr.reduce((total , curValue ,index)=>{
        console.log('第一个值total:'+total+',第二个值curValue:'+curValue +',第三个值index:'+index);
        return total.indexOf(curValue) > 0 ? total : total.concat(curValue);
        // return total.includes(curValue) ? total : total.concat(curValue);
    },[])
}


选择赏赐方式:

×

多少都是心意,感谢大家

选择分享方式:

×

扫一扫分享到微信朋友圈

本文标题:js数组去重的几种方法

本文地址:https://www.zbpnice.cn/post/191.html

温馨提示:文章内容系作者个人观点,不代表柏平博客对观点赞同或支持。

版权声明: 本文为原创文章,创建于7个月前 (05-22),版权归 柏平 所有,欢迎分享本文,转载请保留出处!

还没有留言,还不快点抢沙发?

发表评论: