zoukankan      html  css  js  c++  java
  • 七种去重的方法

     1     <script>
     2     var arr = [6,2,2,4,4,6,6,4,4,6,6,2,23,23,31];
     3     /*第一种去重方式:双重循环*/
     4 /*    function Toheavy(arr){
     5       if(!Array.isArray(arr)){
     6            return "type error!";
     7       }
     8       let newarr = [];
     9       for(let i = 0 ; i <arr.length;i++){
    10           let flag = true;
    11           for(let j = 0;j<newarr.length;j++){
    12                 if(arr[i]===newarr[j]){
    13                     flag= false;
    14                     break;
    15                 }
    16             }
    17         if(flag){
    18             newarr.push(arr[i]);
    19             }
    20         }
    21         return newarr;
    22     }       */
    23 
    24     /*第二种去重方式:indexOf()去重一*/
    25 /*    function Toheavy(arr){
    26          if(!Array.isArray(arr)){
    27              return "type error!";
    28          }
    29          let newarr = [];
    30          for(let i = 0;i<arr.length;i++){
    31              if(newarr.indexOf(arr[i])===-1){
    32                  newarr.push(arr[i]);
    33              }
    34          }
    35          return newarr;
    36     }       */
    37     /*第三种方式去重:indexOf()去重二*/
    38 /*    function Toheavy(arr){
    39         if(!Array.isArray(arr)){
    40             return "type error!";
    41         }
    42         return Array.prototype.filter.call(arr,function(item,index){
    43             return arr.indexOf(item)===index;
    44         })
    45     }*/
    46     /*第四种方式去重:相邻元素去重*/
    47 /*    function Toheavy(arr){
    48         if(!Array.isArray(arr)){
    49             return "type error!";
    50         }
    51         arr = arr.sort();
    52         let newarr = [];
    53         for(let i = 0;i<arr.length;i++){
    54             if(arr[i]!==arr[i+1]){
    55                 newarr.push(arr[i]);
    56             }
    57         }
    58         return newarr;
    59     }*/
    60     /*第五种方式去重:利用对象属性去重*/
    61 /*    function Toheavy(arr){
    62         if(!Array.isArray(arr)){
    63             return "type error!";
    64         }
    65         let newarr=[];
    66         let obj = {};
    67         for(let i = 0;i<arr.length;i++){
    68             if(!obj[arr[i]]){
    69                 newarr.push(arr[i]);
    70                 obj[arr[i]]=1;
    71             }else{
    72                 obj[arr[i]]++
    73             }
    74         }
    75         return newarr;
    76     }*/
    77     /*第六种方式去重:set与结构赋值去重*/
    78 /*    function Toheavy(arr){
    79         if(!Array.isArray(arr)){
    80             return "type error!";
    81         }
    82         return [...new Set(arr)];
    83     }*/
    84     /*第七种方式去重:Arrar.form与set去重*/
    85     function Toheavy(arr){
    86         if(!Array.isArray(arr)){
    87             return "type error!";
    88         }
    89         return Array.from(new Set(arr));
    90     }
    91     console.log(Toheavy(arr));
    92 
    93     </script>
  • 相关阅读:
    #从零开始学Swift2.0# No.4 枚举, 元组, 数组和字典
    #从零开始学Swift2.0# No.3 基本数据类型
    #从零开始学Swift2.0# No.2 运算符和表达式
    #从零开始学Swift2.0# No.1 初识Swift
    MacOS下SVN的使用
    在Xcode中制作.a文件
    在Xcode中制作Framework
    Objective-C中的Runtime
    汉语字典或者词典的简单的ios小demo
    ios开发-UI进阶-核心动画-时钟动画小案例
  • 原文地址:https://www.cnblogs.com/dinner/p/9060548.html
Copyright © 2011-2022 走看看