zoukankan      html  css  js  c++  java
  • 请对以下数组进行去重和排序,至少提供2种方式

    const arr = [1,2,2,3,1,5,2,6,7,4,3,8,9,19]

     //去重
     var newArr = [];
     for(var i=0;i<arr.length;i++){
     // 获取arr数组里的元素
     var value = arr[i];
     // 判断newArr里是否已经有该元素
     //indexOf()返回的是非-1,就表示存在该元素
     //如果是-1则表示不存在该元素,
    //就可以将该元素放入到新的数组中
     if(newArr.indexOf(value)==-1){
    newArr.push(value);
     }
     }

    newArr.sort(function(a,b){
     return a-b;
     });
    console.log(newArr);

    // 通过对象的方式来处理
     const arr = [1,2,2,3,1,5,2,6,7,4,3,8,9,19];
     //去重
     var obj = {}
     var newArr = [];
     for(var value of arr){
     if(!obj[value]){
    obj[value] = true; //obj[1] = true
     newArr.push(value);
     }
     }

    newArr.sort(function(a,b){
     return a-b;
     })
     console.log(newArr);

    //es set集合 不可重复的集合
    const arr2 = [1,2,9,8,10,2,3,1,5,2,6,7,4,3,8,9,19];
    var newArr =Array.from(new Set(arr2)).sort(function(a,b){return a-b});
    console.log(newArr);

  • 相关阅读:
    nginx配置
    线程与进程的区别:
    java面试题1
    递归的定义和优缺点
    使用jedis连接redis可能会出现的问题及解决方案
    Linux上安装Redis
    Linux 权限管理
    Maven
    网址备份
    反射
  • 原文地址:https://www.cnblogs.com/fhm2333/p/10452915.html
Copyright © 2011-2022 走看看