js在数组中删除重复的元素自保留一个(两种实现思路)
例如:varstudent=[‘qiang','ming','tao','li','liang','you','qiang','tao'];
第一种思路是:遍历要删除的数组arr,把元素分别放入另一个数组tmp中,在判断该元素在arr中不存在才允许放入tmp中
用到两个函数:for...in和indexOf()
<scripttype="text/javascript">
varstudent=['qiang','ming','tao','li','liang','you','qiang','tao'];
functionunique(arr){
//遍历arr,把元素分别放入tmp数组(不存在才放)
vartmp=newArray();
for(variinarr){
//该元素在tmp内部不存在才允许追加
if(tmp.indexOf(arr[i])==-1){
tmp.push(arr[i]);
}
}
returntmp;
}
</script>
第二种思路是:把目标数组arr的元素值和键的位置调换自动就把重复的元素给删除掉了,调换后的样子:array('qiang'=>1,'ming'=>1,'tao'=>1)
<scripttype="text/javascript">
varstudent=['qiang','ming','tao','li','liang','you','qiang','tao'];
functionunique(arr){
vartmp=newArray();
for(varminarr){
tmp[arr[m]]=1;
}
//再把键和值的位置再次调换
vartmparr=newArray();
for(varnintmp){
tmparr.push(n);
}
returntmparr;
}
</script>热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下