zoukankan      html  css  js  c++  java
  • js中 在数组中删除重复的元素(自保留一个)

    例如:var student = [‘qiang’,’ming’,’tao’,’li’,’liang’,’you’,’qiang’,’tao’];

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

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

     1 <script type="text/javascript">    
     2         var student = ['qiang','ming','tao','li','liang','you','qiang','tao'];
     3         function unique(arr){
     4             // 遍历arr,把元素分别放入tmp数组(不存在才放)
     5             var tmp = new Array();
     6             for(var i in arr){
     7                 //该元素在tmp内部不存在才允许追加
     8                 if(tmp.indexOf(arr[i])==-1){
     9                      tmp.push(arr[i]);
    10                 }
    11             }
    12             return tmp;
    13         }
    14 
    15 </script>

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

    <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>    
  • 相关阅读:
    Web 2.0网站命名的7个建议
    梦猪课堂视频系列
    计算机英文术语完全介绍
    PPT高手的思路
    在线RSS阅读器大比拼
    【百度现有服务】
    转载VFW编程实例(详)
    实现MFC扩展DLL中导出类和对话框 (转)
    Windows下编译 OpenSceneGraph(转)
    OSG静态编译 (转)
  • 原文地址:https://www.cnblogs.com/qzjpkfj/p/3870211.html
Copyright © 2011-2022 走看看