其他分享
首页 > 其他分享> > for/of与Set和Map

for/of与Set和Map

作者:互联网

ES6内置的Set(集合)和Map(映射)类是可迭代的。在使用for/of迭代时,循环体对集合中的每个元素都会运行一次。可以使用类似下面的代码打印出一个文本字符串中的唯一单词:

let text = "Na na na na na na na na Batman!";
let wordSet = new Set(text.split(" "));
let unique = [];
for(let word of wordSet) {
    unique.push(word);
}
unique // => ["Na", "na", "Batman!"]

Map则比较有意思,因为Map对象的迭代器并不迭代Map键或Map值,而是迭代键/值对。每次迭代,迭代器都会返回一个数组,其第一个元素时键,第二个元素时对应的值。给出一个Map m,可以像下面这样迭代和解构其键/值对:

let m = new Map([[1, "one"]]);
for(let [key, value] of m) {
    key    // => 1
    value  // => "one"
}

 

标签:Map,Set,迭代,na,let,unique
来源: https://www.cnblogs.com/micr/p/15974642.html