js设计模式:迭代器

1.内部迭代器模式

简单的来说就是forEach的实现

var runEach = funtion(obj,callback) {
    var value;
    if (isArray) {
        for(var i =0;i<obj.length;i++) {
            value = callback.call(obj[i], i, obj[i]);
        }
        if(value == false) break;
    }
}

2.外部迭代器

用next迭代直到完成,通常由next, isDone等方法

var Itaretor = function(obj) {
    var index = 0;
    var next = function() {
        index +=1;
    }
    var isDone = function() {
        return index >= obj.length;
    }
    var getCurrentItem = function() {
        return obj[index]
    }
    return {
        next,
        isDone,
        getCurrentItem,
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容