李雯雯还没有猫呢

导航

数组合并后去重的几种方法

一、数组合并

var arr1 = [1,2,3,4,5];
var arr2 = [6,7,8];

var arr = arr1.concat(arr2);
console.log(arr);

二、数组去重

1.获取没重复的最右一值放入新数组

function uniqueArr(array) {
    var r = [];
    for (var i = 0, l = array.length; i < l; i++) {
        for (var j = i + 1; j < l; j++)
            if (array[i] === array[j]) j = ++i;
        r.push(array[i]);
    }
    return r;
}
console.log(uniqueArr([1,2,1,'1','2',3,'5',5,3,4]))

2.最简单的方法

function uniqueArr(array) {
    var n = []; //一个新的临时数组
    //遍历当前数组
    for (var i = 0; i < array.length; i++) {
        //如果当前数组的第i已经保存进了临时数组,那么跳过,
        //否则把当前项push到临时数组里面
        if (n.indexOf(array[i]) == -1) n.push(array[i]);
    }
    return n;
}

3.使用filter过滤去重

var source_arr = ['a', 'b', 'a', 'c', 'a', 'd', '1',1,'1',2,3,2];
var array_unique = source_arr.filter(function (element, index, array) {
    return array.indexOf(element) === index;
});
console.log(array_unique);
console.log(source_arr);

以上就是自己收纳总结的方法啦~(转载请注明出处)

 

posted on 2020-09-03 18:33  李雯雯还没有猫呢  阅读(3803)  评论(0编辑  收藏  举报