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];
    }

上面两段代码都可以,我有点弄不清差别是什么了、、有待改进

原文地址:https://www.cnblogs.com/olive987/p/5885565.html