JS--处理重复元素
1、Js找出在数组中出现过的元素,即删除重复元素最后只留一个
<script> function findEleOnly(arr){ for(var i=arr.length-1;i>=0;i--){ var targetNode=arr[i]; for(var j=0;j<i;j++){ if(targetNode==arr[j]){ arr.splice(i,1); } } } return arr; } </script>
测试结果如下:总能找到出现过得元素
2、查找那些出现次数大于1的元素
<script> function findEleDuplicate(arr){ var temp=[]; arr.concat().sort().sort(function(a,b){ if(a==b && temp.indexOf(a)==-1) temp.push(a); }); return temp; } </script>
测试结果:
3、找出数组中只出现过一次的元素
//找出第一个只出现一次的元素 function findFirst(arr){ for(var i=0;i<arr.length;i++){ var a= arr.slice(i+1); if((a.indexOf(arr[i]))==-1) { return (arr[i]) ;} } } //找出第一个只出现一次的元素 function findFirst(arr){ var res=[]; for(var i=0;i<arr.length;i++){ var a= arr.slice(i+1); if((a.indexOf(arr[i]))==-1) res.push(arr[i]); } return res[0]; }
上面两段代码都可以,我有点弄不清差别是什么了、、有待改进