数组去重(不重排)

题目描述

为 Array 对象添加一个去除重复项的方法。

 1 Array.prototype.uniq = function () {
 2     var arr = [];
 3     var flag = true;
 4     for(var i = 0;i<this.length;i++){
 5         if(arr.indexOf(this[i]) == -1){
 6             if(this[i] != this[i]){ //indexOf对于NaN和{} 一律返回-1
 7                 if(flag){
 8                     arr.push(this[i]);
 9                     flag=false;
10                 }
11             }
12             else{
13                 arr.push(this[i]);
14             }
15         }
16     }
17     return arr;
18 }

来源:牛客网

posted on 2018-05-01 20:10  大黑ylx  阅读(142)  评论(0编辑  收藏  举报