三分钟学习一下 JavaScript 中 set 对象的用法
set 对象
Set 对象容许你存储任何类型的惟一值,无论是原始值或者是对象援用。
1.1 构造方法
const set1 = new Set([1, 2, 3, 4, 5]);
const set2 = new Set();
const set3 = new Set([1, 2, 3, 4, 5, 1]);
1.2 size 属性:个数
console.log(set1.size) // 5
console.log(set2.size) // 0
console.log(set3.size) // 5
1.3 add 办法:在 set 对象的尾部退出一个新元素,同时返回 set 对象
set2.add(1)
1.4 clear 办法:移除 set 对象中的所有元素 没有返回值
console.log(set1.clear()) / undefined
1.5 entries 办法: 返回一个新的迭代器对象,该对象蕴含 Set 对象中的按插入顺序排列的所有元素的值的 [value, value] 数组。为了使这个办法和 Map 对象放弃类似,每个值的键和值相等。let test = set3.entries()
for (let item of test) {console.log(item)
}
自行打印下就晓得了
1.6 forEach 办法: 依照插入程序,为 Set 对象中的每一个值调用一次 callBackFn。如果提供了 thisArg 参数,回调中的 this 会是这个参数。set3.forEach((item) => {console.log(item)
})
1.7 has 办法 返回一个布尔值,示意该值在 Set 中存在与否。set3.has(10) // false
set3.has(1) // true
1.8 values 办法 返回一个新的迭代器对象,该对象蕴含 Set 对象中的按插入顺序排列的所有元素的值。for (let item of test) {console.log("item", item)
}
1.9 delete 办法:删除元素,返回 Set.prototype.has(value)在这个操作前会返回的值(即如果该元素存在,返回 true,否则返回 false)set3.delete(1)
今天大略写一下 map 对象的用法,再不收回去就十二点了哈哈。
对于迭代器对象,这玩意可真的不好用文字来表白。有机会了专门写一下。