数组去重排序(基础版)

  1. let arr=[5,5,4,4,3,3,6,6,2,2,5,5,5],
  2. temp,
  3. newarr=[];
  4. for(let i=0;i<arr.length;i++){
  5. // 运用检索数组的方式,没有检索到重复的就返回 -1
  6. if(newarr.indexOf(arr[i]) == -1){
  7. //将newarr里没有的数值push进数组
  8. newarr.push(arr[i]);
  9. }
  10. }
  11. for(i=0;i<newarr.length-1;i++){
  12. for(j=0;j<newarr.length-i;j++){
  13. if(newarr[j] > newarr[j+1]){
  14. temp = newarr[j];
  15. newarr[j]=newarr[j+1];
  16. newarr[j+1]=temp;
  17. }
  18. }
  19. }
  20. console.log(newarr);//2,3,4,5,6

数组去重排序(进阶版)

  1. var arr = [1, 2, 2, 3, 4, 5, 8, 6, 7, 7, 8, 8, 0, 8, 6, 3, 4, 56, 2];
  2. //通过indexOf来寻找对应的第一个数加入到新数组内
  3. var arr2 = arr
  4. .filter((x, index,self)=>self.indexOf(x)===index)
  5. .sort(function (a, b) {
  6. //添加比较函数 如果返回负值a在前b在后,返回正值a在后b在前
  7. return a < b ? -1 : 1;
  8. });
  9. console.log(arr2.sort(compare)); //[0, 1, 2, 3, 4, 5, 6, 7, 8, 56]