for..of循环首先会向被访问对象请求一个迭代器对象,然后通过调用迭代器对象的next()方法来遍历所有返回值。数组有内置的@@iterator,因此for..of可以直接应用在数组上。我们使用内置的@@iterator来手动遍历数组,看看它是怎么工作的:

        var myArray = [ 1, 2, 3 ];
        var it = myArray[Symbol.iterator]();

        it.next(); // { value:1, done:false }
        it.next(); // { value:2, done:false }
        it.next(); // { value:3, done:false }
        it.next(); // { done:true }

ohoherror
21 声望1 粉丝