1、set
set
类似于数组(Array
),不过 set
的成员是唯一的
const s = new Set();
s.add(1);
s.add(2);
/* 支持链式调用 */
// s.add(1).add(2)
console.log(s) // Set(2) --> 1、2
如果添加相同的数据,会将相同的成员去重
const s = new Set();
s.add(1).add(1);
console.log(s) // Set(1) --> 1
小妙用
利用set
的成员唯一性去重
let arr = [1,1,2,3,5,8,1,2,5];
// 利用解构将set转变为 Array
let set = [...new Set(arr)];
console.log(set) // 1, 2, 3, 5, 8
2、map
map
是以键值对的方式存储数据,类似于JAVA
的Map
const m = new Map();
m.set('name', 'any').set('age', 18)
console.log(m) /* Map(2) {"name"=>"any","age"=>18} */
如何循环map?利用 for of 循环!!
const m = new Map();
m.set('name', 'any').set('age', 18)
for(let [key, value] of m) {
/* key=name value=any */
/* key=age value=18 */
console.log(`key=${key} value=${value}`)
}