前端开发用js数组去重(4种方法)

java开发与web前端|基于nodejs前端开发案例|网站前端开发环境

第一种:双重循环
javascript 代码
var ary = [1, 2, 3, 3, 2, 3, 4, 5]
    for (var i = 0; i < ary.length; i++) {
        for (var j = i + 1; j < ary.length; j++) {
            if (ary[i] === ary[j]) {
                ary.splice(i, 1)
                i–
            }
        }
    }
    alert(ary)

#####第二种:新数组
javascript 代码

var ary = [1, 2, 3, 3, 2, 3, 4, 5];
    var ary1 = [];
    for (var i = 0; i < ary.length; i++) {
        if (ary1.indexOf(ary[i]) == -1) {
            ary1.push(ary[i]);
        }
    }
    alert(ary1);

#####第三种:可以记录次数的对象去重
javascript 代码

var ary = [1, 2, 3, 3, 2, 3, 4, 5];
    var obj = {};
    for (var i = 0; i < ary.length; i++) {
        var cur = ary[i];
        if (obj[cur]) {
            obj[cur]++;
        } else {
            obj[cur] = 1;
        }
    }
    var ary = [];
    for (var attr in obj) {
        ary.push(attr);
    }
    alert(ary);

#####第四种:sort 思想
javascript 代码

var ary = [1, 2, 3, 3, 2, 3, 4, 5];
    ary.sort(function (a, b) { return a – b; });
    for (var i = 0; i < ary.length; i++) {
        if (ary[i] === ary[i + 1]) {
            ary.splice(i, 1);
            i–;
        }
    }
    alert(ary);
开发网站前端语言|网站前端后端实战开发案例视频|如何快速开发网站前端
赞(0)
前端开发者 » 前端开发用js数组去重(4种方法)
64K

评论 抢沙发

评论前必须登录!