使用for of 进行遍历

ES6—41:迭代器_自定义

注意:for of 遍历的是键的值

使用for in遍历

ES6—41:迭代器_数组_02

注意:for in 遍历的是键,即序号。

数组为什么能够进行遍历?

答:是因为其有可遍历的属性。
ES6—41:迭代器_数组_03

自定义遍历属性

const banji = {
    name: "终极一班",
    arr: ["赵","钱","孙","李"],
    [Symbol.iterator]() {
        let index = 0;
        let _this = this;
        return {
            next: function() {
                if(index < _this.arr.length) {
                    const result =  {value: _this.arr[index],done: false};
                    index++;
                    return result;
                } else {
                    return {value: undefined,done:true};
                }
                
            }
        }
    }
};
for(let v of banji) {
    console.log(v);
};

ES6—41:迭代器_数组_04