所有部署Iterator接口的对象(这是前提条件),都可以用for...of循环遍历。
下面是不符合上面的前提条件的,也就是这个使用对象字面量定义的对象map3,没有部署Iterator接口,所以不能迭代,就不能用for...of ,运行就报错了
Map结构原生支持Iterator接口,那么配合变量的解构赋值获取键值键名就更加方便。
let map = new Map()
map.set('first', 'hello')
map.set('second', 'world')
for (let [key, value] of map) {
console.log(key + ' is ' + value)
}
// first is hello
// second is world