遍历器 for...of 循环
Posted mrzhujl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了遍历器 for...of 循环相关的知识,希望对你有一定的参考价值。
for...of 作为遍历所有数据结构的统一的方法,但不能直接遍历对象,因为没有 Symbol.iterator 遍历器接口
(所以可用 Object.keys( ) / Object.values( ) 去转一道,转成数组就可以用了。或者给obj [ Symbol.iterator ] = function( ){ ... })
ary.key( ) 拿到数组的下标
value( ) 拿到的是数组的每个值
entries( ) 拿到的是:[ 下标,值 ] 这个样的一个形式的所有的数据。
Object.keys( ) 把对象的 key 值抽取出来放在数组中
Object.values( obj ) 把对象的 value 值抽取出来放在数组中
Object.entries( )
obj[Symbol.iterator] = function(){ return{ next:function(){ return{ value:传出去的值, done:false 没有遍历完 / ture 遍历完了 } } } }
以上是关于遍历器 for...of 循环的主要内容,如果未能解决你的问题,请参考以下文章
Javascript Symbol之迭代器让对象支持for..of遍历