ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。
Set本身是一个构造函数,用来生成Set数据结构。
/**
*@param {Array} arr
*@return {Array} newArr
**/
export const dedupeArr = function filteredArr(arr) {
const newArr = [...new Set(arr)] // 利用es6的set集合的新特性,值不重复
return newArr
}
// 或者用箭头函数
export const dedupeArr = arr => {
const newArr = [...new Set(arr)]
return newArr
}
const arr = ['1', '1', false, 2, false, 'hello', null, null, 21, undefined, undefined]
// 调用函数
uniqueArr(arr) // ["1", false, 2, "hello", null, 21, undefined]
此方法只使用于过滤基本数据类型:string, number, boolean, null, undefined