1.Set函数
Set本身是一个构造函数,用来生成Set数据结构。
它类似于数组,但里面的成员是唯一的,不重复的。
向Set加入值时,不会发生类型转换,它类似于精确相等运算符(===),主要的区别是向Set加入值时认为NaN等于自身,而精确相等运算符认为NaN不等于自身。
1.1用法
1.1.1数组去重
function noRepeat(arr) {
return Array.from(new Set(arr))
// return [...new Set(arr)]
}
var oldArr = [1, 4, 2, '2', 4, 'sun', 'moon'];
console.log(noRepeat(oldArr))
// [1, 4, 2, '2', 'sun', 'moon']
1.1.2字符串去重
[...new Set('sssuuunnn')].join('') // join ['s', 'u', 'n'] => sun
1.1.3方法
add(value):添加某个值,返回Set结构本身
delete(value):删除某个值,返回一个布尔值表示是否删除成功
has(value):返回一个布尔值,表示参数是否为Set的成员
clear():清除所有成员,没有返回值
2.扩展运算符
对象中的扩展运算符(...)用于取出参数对象中的所有可遍历性,拷贝到当前的对象之中。