e中人 发表于 2023-11-4 04:55:38

JavaScript数组去重


[*]ES6提供的Set是一组唯一值的集合,每个值仅能出现一次;
let arr = ;

function unique(array) {
    return Array.from(new Set(array));
};

unique(arr); //2. 使用filter方法 使用数组的filter方法可以创建一个新数组,该新数组只包含原数组中不重复的元素:
let arr = ;
const uniqueArray = arr.filter((item, index, self) => {
    // 值为true时第一次出现,为值false时重复出现
    return self.indexOf(item) === index;
});
console.log(uniqueArray); //3. 使用forEach方法 使用forEach方法遍历原数组,将不重复的元素添加到一个新数组中,
let arr = ;
function unique(array) {
    let arr = [];
    array.forEach(item => {
      if (!arr.includes(item)) {
            // 判断条件可用arr.indexOf(item) == -1代替
            arr.push(item)
      };
    })
    return arr;
}
unique(arr); //
4. 用两个for循环嵌套,搭配splice方法删除重复的值
let arr = ;

function unique(array) {
    for (let i = 0; i < array.length; i++) {
      for (let j = i + 1; j < array.length; j++) {
            if (array == array) {
                array.splice(j, 1);
                j--;
            }
      }
    }
    return array;
}

unique(arr); //
页: [1]
查看完整版本: JavaScript数组去重