利用ES6 Set去重

方法一: 使用 Set

javascript 复制代码
const arr = [1, 2, 3, 4, 4, 5, 6, 6, 7];
const uniqueArr = Array.from(new Set(arr));
// 或者使用扩展运算符
// const uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5, 6, 7]

方法二: 使用 indexOf

javascript 复制代码
const arr = [1, 2, 3, 4, 4, 5, 6, 6, 7];
const uniqueArr = [];
arr.forEach(item => {
  if (uniqueArr.indexOf(item) === -1) {
    uniqueArr.push(item);
  }
});
console.log(uniqueArr); // [1, 2, 3, 4, 5, 6, 7]

方法三: 使用 includes

javascript 复制代码
const arr = [1, 2, 3, 4, 4, 5, 6, 6, 7];
const uniqueArr = [];
arr.forEach(item => {
  if (!uniqueArr.includes(item)) {
    uniqueArr.push(item);
  }
});
console.log(uniqueArr); // [1, 2, 3, 4, 5, 6, 7]

方法四: 使用 filter

javascript 复制代码
const arr = [1, 2, 3, 4, 4, 5, 6, 6, 7];
const uniqueArr = arr.filter((item, index, array) => {
  return array.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5, 6, 7]

方法五: 使用 reduce

javascript 复制代码
const arr = [1, 2, 3, 4, 4, 5, 6, 6, 7];
const uniqueArr = arr.reduce((result, current) => {
  if (!result.includes(current)) {
    result.push(current);
  }
  return result;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5, 6, 7]
相关推荐
程序员阿鹏几秒前
SpringBoot自动装配原理
java·开发语言·spring boot·后端·spring·tomcat·maven
彭世瑜3 分钟前
C/C++:libfort用于在终端输出表格
c语言·开发语言·c++
RAY_01044 分钟前
Python—数据可视化pyecharts
开发语言·python
徐同保4 分钟前
n8n+GPT-4o一次解析多张图片
开发语言·前端·javascript
春日见8 分钟前
如何跑通,吃透一个开源项目?
linux·运维·开发语言·数码相机·matlab
技术净胜13 分钟前
MATLAB数据清洗流程包含:缺失值处理/异常值检测/重复值删除
开发语言·matlab
SmoothSailingT14 分钟前
C#——textBox控件(1)
开发语言·c#
GISer_Jing16 分钟前
AI赋能前端:从核心概念到工程实践的全景学习指南
前端·javascript·aigc
不爱吃糖的程序媛25 分钟前
Flutter-OH OAuth 鸿蒙平台适配详细技术文档
javascript·flutter·harmonyos
悦悦子a啊26 分钟前
使用 Java 集合类中的 LinkedList 模拟栈以此判断字符串是否是回文
java·开发语言