这是一个对数组去重并排序的方法

44 阅读1分钟
//这是一个去重并排序的方法
function fn(arr) {
    // 1.Set结构
    // const NewArr = [...new Set(arr)];
    // NewArr.sort((a, b) => a - b);
    // return NewArr;

    // 2.正序循环
    // for (var i = 0; i < arr.length; i++) {
    //   for (var j = i + 1; j < arr.length; j++) {
    //     if (arr[i] == arr[j]) {
    //       arr.splice(i, 1);
    //       i--;
    //     }
    //   }
    // }

    // 3.倒叙循环
    // for (var i = arr.length - 1; i >= 0; i--) {
    //   for (var j = i - 1; j >= 0; j--) {
    //     if (arr[i] == arr[j]) {
    //       arr.splice(i, 1);
    //     }
    //   }
    // }

    // 4.for循环结合indexOf()方法
    // const newArr = [];
    // for (var i = 0; i < arr.length; i++) {
    //   if (newArr.indexOf(arr[i]) == -1) {
    //     newArr.push(arr[i]);
    //   }
    // }
    // newArr.sort((a, b) => a - b);
    // return newArr;

    // 5.for循环结合includes()方法
    // const newArr = [];
    // for (var i = 0; i < arr.length; i++) {
    //   if (!newArr.includes(arr[i])) {
    //     newArr.push(arr[i]);
    //   }
    // }
    // newArr.sort((a, b) => a - b);
    // return newArr;

    // 6.filter结合indexOf方法
    // return arr.filter((item, index, arr) => arr.indexOf(item) === index).sort((a, b) => a - b);
  }

  console.log(fn(arr));  // [1, 2, 3, 4, 5, 6, 7, 98, 'false', 'true']