本文实例讲述了javascript删除数组重复元素的方法。分享给大家供大家参考。具体分析如下:
这里分享一个前端面试高频题,主要实现javascript删除数组重复元素。希望对初学者有所帮助
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
//数组去重的方法 |
虽然网上也有很多而且自己写的也不咋地,但是毕竟自己写的逻辑清楚以后还可以顺着逻辑扩展比如扩展到对象元素去重或者是可以同时操作多个数组等等这里再放上别人的写的几个方法可以综合比较下
方法1:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
function oSort(arr) |
方法2:
遍历要删除的数组arr, 把元素分别放入另一个数组tmp中,在判断该元素在arr中不存在才允许放入tmp中
用到两个函数:for ...in 和 indexOf()
?
1 2 3 4 5 6 7 8 9 10 11 |
var student = ['qiang','ming','tao','li','liang','you','qiang','tao']; |
方法3:
把目标数组arr的元素值和键的位置调换 自动就把重复的元素给删除掉了,调换后的样子:array('qiang'=>1,'ming'=>1,'tao'=>1)
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<script type="text/javascript"> |
方法4
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
/** |
方法都差不多第三个方法想法还是蛮高明的~
希望本文所述对大家的javascript程序设计有所帮助。