码迷,mamicode.com
首页 > 其他好文 > 详细

ES6 自定义一个实现了Iterator接口的对象

时间:2019-09-19 16:00:33      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:OLE   参考资料   length   return   ocs   val   定义   http   let   

参考资料

var obj = {
    data: [1,2,3,4,5],
        // 这里实际上就是去定义如何实现Iterator接口
    [Symbol.iterator](){
        const that = this;
        let index = 0;
        return {
            next(){
                if (index < that.data.length){
                    return {
                        done: false,
                        value: that.data[index++],
                    }

                } else {
                    return {
                        done: true,
                        value: undefined
                    }
                }
            }
        }
    }
}

console.log(...obj);

输出的结果就是 1 2 3 4 5

ES6 自定义一个实现了Iterator接口的对象

标签:OLE   参考资料   length   return   ocs   val   定义   http   let   

原文地址:https://www.cnblogs.com/westlin/p/11549858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!