iterator
我们知道可以通过for .. in来获取对象的属性名字,而for .. of是获取对应的value.
并且for .. of是需要iterable才可以。
// example1
let ar = ['xiaohesong']
let art = ar[Symbol.iterator]()
art // Array Iterator
art.next() //{value: "xiaohesong", done: false}
art.next() // {value: undefined, done: true}
//example2
let str = 'string'
let strIt = str[Symbol.iterator]()
strIt // StringIterator
// example3
let o = {name: 'xhs'}
let obj = o[Symbol.iterator]() //Uncaught TypeError: o[Symbol.iterator] is not a function看下面代码。来改写,可迭代。
let range = {
from: 1,
to: 5
};
// We want the for..of to work:
// for(let num of range) ... num=1,2,3,4,5改写成这样
再来看一个例子
Array.from
Last updated