高效数组去重方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高效数组去重方法相关的知识,希望对你有一定的参考价值。

  1. Array.prototype.unique = function()  
  2. {  
  3.     var n = {}, r = [], len = this.length, val, type;  
  4.     for (var i = 0; i < this.length; i++) {  
  5.         val = this[i];  
  6.         type = typeof val;  
  7.         if (!n[val]) {  
  8.             n[val] = [type];  
  9.             r.push(val);  
  10.         } else if (n[val].indexOf(type) < 0) {  
  11.             n[val].push(type);  
  12.             r.push(val);  
  13.         }  
  14.     }  
  15.     return r;  
  16. }  

 

思路源自于hpl大牛的思路,修正来自于CSDN社区的 i52nd  ,侵删。

以上是关于高效数组去重方法的主要内容,如果未能解决你的问题,请参考以下文章

前端实现数组去重,如何高效快捷?

Golang 高效的原地数组去重

javascript数组去重 - 效率测试

使用JavaScript进行数组去重——一种高效的算法

数组去重(只讲两种方法)

高效数组去重