几种不能去掉重复的引用数据类型的写法
原数组、
let arr = [1, 1, "1", "1", null, null, undefined, undefined, /a/, /a/, NaN, NaN, {}, {}, [], []]
复制代码
1.使用 Set
如果传递一个可迭代对象,它的所有元素将不重复地被添加到新的 Set中。如果不指定此参数或其值为null,则新的 Set为空。
查看Set详情
let res = [...new Set(arr)]
console.log(res)
复制代码
2.使用filter
用于对数组进行过滤。
它创建一个新数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
查看filter详情
let res = arr.filter((item, index) => {
return arr.indexOf(item) === index
})
console.log(res)
复制代码
3.使用reduce
接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值
查看reduce详情
let res = arr.reduce((pre, cur) => {
return pre.includes(cur) ? pre : [...pre, cur]
}, [])
console.log(res)
复制代码
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END