请对以下数组进行去重和排序,至少提供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);

原文地址:https://www.cnblogs.com/fhm2333/p/10452915.html