js数组如何去除重复

前端开发使用数组时,经常会遇到需要一个去重操作:把一个数组里面的重复元素删除,返回一个新的数组。这种操作,必须涉及到数组遍历的问题,那就需要注意性能了,这里总结了一维数组和二维数组的去重方法,仅供参考。

1、一维数组去重:

Array.prototype.unique = function()
{
    this.sort();
    var re=[this[0]];
    for(var i = 1; i < this.length; i++)
    {
        if( this[i] !== re[re.length-1])
        {
            re.push(this[i]);
        }
    }
    return re;
}

2、二维数组去重:

Array.prototype.uniqueTwoD = function(this){
    var hash = {};
    var result = [];
    for(var i = 0, len = this.length; i < len; i++){
        if(!hash[this[i]]){
            result.push(this[i]);
            hash[this[i]] = true;
        }
    }
    return result;
}


本文由 w3cmark_前端笔记 版权所有,转载时请注明出处。
注明出处格式:w3cmark (http://www.w3cmark.com/2016/509.html)

分享到:

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
关注w3cmark
微信公众号 w3cmark_com