最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JS数组去重方法总结

来源:动视网 责编:小采 时间:2020-11-27 19:59:10
文档

JS数组去重方法总结

JS数组去重方法总结:本文主要和大家分享JS数组去重方法总结,一共有七种方法,希望能帮助到大家。最简单的方法:1234567101112131415161718var arr=[2,8,5,0,5,2,6,7,2];function unique1(arr){ var hash=[]; for (var i = 0; i <
推荐度:
导读JS数组去重方法总结:本文主要和大家分享JS数组去重方法总结,一共有七种方法,希望能帮助到大家。最简单的方法:1234567101112131415161718var arr=[2,8,5,0,5,2,6,7,2];function unique1(arr){ var hash=[]; for (var i = 0; i <


本文主要和大家分享JS数组去重方法总结,一共有七种方法,希望能帮助到大家。

最简单的方法:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

var arr=[2,8,5,0,5,2,6,7,2];
function unique1(arr){
var hash=[];
for (var i = 0; i < arr.length; i++) {
if(hash.indexOf(arr[i])==-1){
hash.push(arr[i]);
}
}
return hash;

}


方法一:

双层循环,外层循环元素,内层循环时比较值

如果有相同的值则跳过,不相同则push进数组

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

Array.prototype.distinct = function(){

var arr = this,

result = [],

i,

j,

len = arr.length;

for(i = 0; i < len; i++){

for(j = i + 1; j < len; j++){

if(arr[i] === arr[j]){

j = ++i;

}

}

result.push(arr[i]);

}

return result;

}

var arra = [1,2,3,4,4,1,1,2,1,1,1];

arra.distinct(); //返回[3,4,2,1]

方法二:利用splice直接在原数组进行操作

双层循环,外层循环元素,内层循环时比较值

值相同时,则删去这个值

注意点:删除元素之后,需要将数组的长度也减1.

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

Array.prototype.distinct = function (){

var arr = this,

i,

j,

len = arr.length;

for(i = 0; i < len; i++){

for(j = i + 1; j < len; j++){

if(arr[i] == arr[j]){

arr.splice(j,1);

len--;

j--;

文档

JS数组去重方法总结

JS数组去重方法总结:本文主要和大家分享JS数组去重方法总结,一共有七种方法,希望能帮助到大家。最简单的方法:1234567101112131415161718var arr=[2,8,5,0,5,2,6,7,2];function unique1(arr){ var hash=[]; for (var i = 0; i <
推荐度:
标签: 方法 js 总结
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

Top