美文网首页
迭代器模式讲解

迭代器模式讲解

作者: 拾钱运 | 来源:发表于2020-10-23 10:49 被阅读0次

    迭代器模式是一种相对简单的模式,目前的绝大部分语言都内置了迭代器

    迭代器模式是指提供一种方法顺序访问一个聚合对象中的各个元素,而不需要暴露该对象的内部表示。

    例子:

    内部迭代器

    for in
    for of
    $.each

    外部迭代器

    外部迭代器必须显式地请求下一个元素,外部迭代器增加了一些调用的复杂度,但相对也增强了迭代器的灵活性,我们可以手工控制迭代的过程和顺序

    var Iterator = function( obj ){
        //初始化索引
        var current = 0;
        //下一个
        var next = function(){
            current += 1;
        };
        //如果当前的索引大于或者等于参数的个数,则已经是最后一个
        var isDone = function(){
            return current >= obj.length;
        };
        //获取当前迭代对象
        var getCurrItem = function(){
            return obj[ current ];
        };
        //返回
        return {
            next: next,
            isDone: isDone,
            getCurrItem: getCurrItem
        }
    };
    

    调用方式相对复杂,但他的适用面更广,也能满足更多变得需求。

    相关文章

      网友评论

          本文标题:迭代器模式讲解

          本文链接:https://www.haomeiwen.com/subject/amspmktx.html