定义:调用Iterator接口产生遍历器对象(for-of内部调用数据结构的Symbol.iterator())
遍历字符串:for-in获取索引,for-of获取值(可识别32位UTF-16字符)
遍历数组:for-in获取索引,for-of获取值
遍历对象:for-in获取键,for-of需自行部署
遍历Set:for-of获取值 => for (const v of set)
遍历Map:for-of获取键值对 => for (const [k, v] of map)
遍历类数组:包含length的对象、Arguments对象、NodeList对象(无Iterator接口的类数组可用Array.from()转换)
计算生成数据结构:Array、Set、Map
keys():返回遍历器对象,遍历所有的键
values():返回遍历器对象,遍历所有的值
entries():返回遍历器对象,遍历所有的键值对
与for-in区别
有着同for-in一样的简洁语法,但没有for-in那些缺点、
不同于forEach(),它可与break、continue和return配合使用
提供遍历所有数据结构的统一操作接口
网友评论