码迷,mamicode.com
首页 > 编程语言 > 详细

js在数组中删除重复的元素自保留一个

时间:2017-11-11 19:00:14      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:tab   type   you   另一个   目标   元素   body   family   javascrip   

js在数组中删除重复的元素自保留一个

第一种思路是:遍历要删除的数组arr, 把元素分别放入另一个数组tmp中,在判断该元素在arr中不存在才允许放入tmp中

用到两个函数:for ...in 和 indexOf()

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<script type="text/javascript">

var student = [‘qiang‘,‘ming‘,‘tao‘,‘li‘,‘liang‘,‘you‘,‘qiang‘,‘tao‘];

function unique(arr){

// 遍历arr,把元素分别放入tmp数组(不存在才放)

var tmp = new Array();

for(var i in arr){

//该元素在tmp内部不存在才允许追加

if(tmp.indexOf(arr[i])==-1){

tmp.push(arr[i]);

}

}

return tmp;

}

 

</script>

第二种思路是:把目标数组arr的元素值和键的位置调换 自动就把重复的元素给删除掉了,调换后的样子:array(‘qiang‘=>1,‘ming‘=>1,‘tao‘=>1)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<script type="text/javascript">

var student = [‘qiang‘,‘ming‘,‘tao‘,‘li‘,‘liang‘,‘you‘,‘qiang‘,‘tao‘];

function unique(arr){

var tmp = new Array();

 

for(var m in arr){

tmp[arr[m]]=1;

}

//再把键和值的位置再次调换

var tmparr = new Array();

 

for(var n in tmp){

tmparr.push(n);

}

return tmparr;

}

</script>

js在数组中删除重复的元素自保留一个

标签:tab   type   you   另一个   目标   元素   body   family   javascrip   

原文地址:http://www.cnblogs.com/jackson-zhangjiang/p/7819486.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!