码迷,mamicode.com
首页 > 编程语言 > 详细

js数组去重的四种方法

时间:2020-06-02 11:05:17      阅读:53      评论:0      收藏:0      [点我收藏+]

标签:doc   四种   去重处理   tar   style   四种方法   删除   http   来源   

数组在js中是常用的一种数据类型,对数组的一些操作尤为重要,本篇文章给大家讲解一下,如何对JS数组去重处理。

下面看代码:

//第一种方法
Array.prototype.removeDuplicate = function() {
    var n = [];
    for (var i = 0; i < this.length; i++) {
        if (n.indexOf(this[i]) == -1) {
            n.push(this[i]);
        }
    }
    return n;
}
var arr = [1, 2, 3, 3, 2, ‘我‘, ‘我‘, 34, ‘我‘, NaN, NaN];
var m1 = arr.removeDuplicate();
console.log(m1); //[1, 2, 3, "我", 34, "我的", NaN, NaN]
document.write("第一种方法<br>");
document.write("数组值:"+arr + "<br>");
document.write("删除重复后:"+m1);
//第二种方法
Array.prototype.removeDuplicate = function() {
    var n = [];
    for (var i = 0; i < this.length - 1; i++) {
        if (this.indexOf(this[i]) == i) {
            n.push(this[i]);
        }
    }
    return n;
}
var m2 = arr.removeDuplicate();
console.log(m2); //[1, 2, 3, "我", 34, "我的"]
//第三种方法
Array.prototype.removeDuplicate = function() {
    var n = [],
    m = {};
    for (var i = 0; i < this.length; i++) {
        if (!m[this[i]]) {
            m[this[i]] = true;
            n.push(this[i]);
        }
    }
    return n;
}
var m3 = arr.removeDuplicate();
console.log(m3); //[1, 2, 3, "我", 34, "我的", NaN]
//第四种方法
Array.prototype.removeDuplicate = function() {
    var n = [];
    this.sort();
    for (var i = 0; i < this.length; i++) {
        if (this[i] != this[i + 1]) {
            n.push(this[i]);
        }
    }
    return n;
}
var m4 = arr.removeDuplicate();
console.log(m4); //[1, 2, 3, 34, NaN, NaN, "我", "我的"]      

好啦,以上就是JS数组去重的四种方法,希望能帮到大家。

本文来源:http://www.d163.net/html/web2/84.html -- 小郭博客(AndyGuo)

js数组去重的四种方法

标签:doc   四种   去重处理   tar   style   四种方法   删除   http   来源   

原文地址:https://www.cnblogs.com/andywenming/p/13029801.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!