📅  最后修改于: 2023-12-03 15:02:22.883000             🧑  作者: Mango
在 JavaScript 中,我们可以很容易地从数组中删除重复项,以下是实现的几种方法。
使用 ES6 中的 Set(),它会将所有重复的项删除,然后你可以使用展开运算符将其转换为数组。
const arr = [1, 2, 2, 3, 4, 4, 5];
const uniqueArr = [...new Set(arr)];
其中,[...new Set(arr)]
的意思是将 Set 对象转换为数组。
使用 filter(),可以迭代每个元素,并将其与数组中剩余的元素进行比较。
const arr = [1, 2, 2, 3, 4, 4, 5];
const uniqueArr = arr.filter((item, index) => {
return arr.indexOf(item) === index;
});
其中,filter((item, index) => arr.indexOf(item) === index)
的意思是如果一个元素在数组中的第 n 个位置与当前位置相同,则保留该元素。
使用 reduce(),可以将每个元素与不重复的元素数组进行比较,然后将其添加到数组中。
const arr = [1, 2, 2, 3, 4, 4, 5];
const uniqueArr = arr.reduce((prev, cur) => {
if (!prev.includes(cur)) {
prev.push(cur);
}
return prev;
}, []);
其中,reduce((prev, cur) => !prev.includes(cur) ? prev.concat(cur) : prev, [])
的意思是如果数组中没有当前元素,则添加该元素到不重复的数组中。
以上是几种从 JavaScript 中删除数组中重复项的方法。根据具体情况和要求使用不同的方法来处理,可以提高代码的效率和可读性。