开发者社区> 问答> 正文

javascript 去除重复元素

var newArray = []; 
    var A = Array(1,2,2,2,2,2,2); 
var B = Array(1,2,2,2,2,2,2); 
    for(var i =0 ;i<A.length;i++){ 
        for(var b =0 ;i<B.length;b++){ 
            if(A[i]==B[b]){ 
                var dx=a.getIndexByValue(A[i]); 
                A.remove(dx); 
            } 
        } 
         
    } 
    Array.prototype.remove=function(dx)   
{   
    if(isNaN(dx)||dx>this.length){return false;}   
    for(var i=0,n=0;i<this.length;i++)   
    {   
        if(this[i]!=this[dx])   
        {   
            this[n++]=this[i]   
        }   
    }   
    this.length-=1   
}   
    

Array.prototype.getIndexByValue= function(value)   
{   
    var index = -1;   
    for (var i = 0; i < this.length; i++)   
    {   
        if (this[i] == value)   
        {   
            index = i;   
            break;   
        }   
    }   
    return index;   
}   

展开
收起
a123456678 2016-07-15 16:24:10 2100 0
3 条回答
写回答
取消 提交回答
  • const arr2set = arr => Array.from(new Set(arr))
    
    2019-07-17 19:57:14
    赞同 展开评论 打赏
  • var A = [1,2,2,2,2,2,2];
    
    A = [...new Set(A)];
    2019-07-17 19:57:14
    赞同 展开评论 打赏
  • Array.prototype.indexOf = Array.prototype.indexOf || function (val, start) {
        var i;
        i = start || 0;
        for (; i < this.length; i++) {
            if (this[i] === val) {
                return i;
            }
        }
        return -1;
    };
    Array.prototype.removeRepeated = function (Void) {
        var arr, len, val, i, n;
        arr = this;
        i = 0;
        for (; i < arr.length; i++) {
            val = arr[i];
            n = null;
     
            //消除相同元素
            while (n = arr.indexOf(val, i + 1), n !== -1 && n < arr.length) {
                arr.splice(n, 1);
            }
        }
        return arr;
    };
    //測試目標
    var a = new Array(1, 2, 2, 2, 2, 2, 2, 3, 4, 5, 2, 1, 7, 8, 9, 10, 33, 22, 11, 4, 55);
    a.removeRepeated(); //1,2,3,4,5,7,8,9,10,33,22,11,55
    2019-07-17 19:57:14
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载