资讯专栏INFORMATION COLUMN

es6的Iterator(迭代器)

jkyin / 2753人阅读

摘要:的迭代器迭代器允许每次访问数据集合的一个元素,当指针指向数据集合最后一个元素是,迭代器便会退出。它提供了函数来遍历一个序列,这个方法返回一个包含和属性的对象。

es6的Iterator(迭代器)
迭代器允许每次访问数据集合的一个元素,当指针指向数据集合最后一个元素是,迭代器便会退出。它提供了 next() 函数来遍历一个序列,这个方法返回一个包含 done 和 value 属性的对象。
var arr = [1,2,3,4,5,6];
    for(var i = 0;i

自定义的迭代器
var arr = [1,2,3,4,5,6];

function Iterator(arr){
    let i = -1;
    function next(){
        i++;
        let value;
        let done = false;
        if(i == arr.length) {
            value = undefined;
            done = true;
        }else{
            value = arr[i];
        }
        return {valye:arr[i],done:done};
    }
    return {next:next};
}

let iter =Iterator(arr);
console.log(iter.next());
console.log(iter.next());
console.log(iter.next());
console.log(iter.next());
console.log(iter.next());
console.log(iter.next());
console.log(iter.next());

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/84105.html

相关文章

  • ES6 迭代简介

    摘要:简单介绍下规范里面迭代器相关的概念。接口指定迭代器对象必须实现一个方法,如下示例伪代码。方法是否接受参数,在规范中并不严格限定,取决于实现当前这个迭代器的对象。表示迭代终结,后续再调用当前迭代器的方法,返回的对象一律为。 简单介绍下 ES6 规范里面迭代器(Iterator)相关的概念。最近为啥会看到迭代器,是因为看了 fetch 相关的 Headers 接口,为了实现下 Header...

    mingde 评论0 收藏0
  • es6迭代

    摘要:起源何为迭代器迭代器是被设计专用于迭代的对象,带有特定接口。所有的迭代器对象都拥有方法,会返回一个结果对象。这个知名符号定义了为指定对象返回迭代器的函数。接下来被调用,迭代器结果对象的属性被读出并放入了变量。 起源 何为迭代器? 迭代器是被设计专用于迭代的对象,带有特定接口。所有的迭代器对象都拥有 next() 方法,会返回一个结果对象。该结果对象有两个属性:对应下一个值的 value...

    stormzhang 评论0 收藏0
  • ES6迭代与可迭代对象

    摘要:通过生成器创建的迭代器也是可迭代对象,因为生成器默认会为属性赋值。我们可以用来访问对象的默认迭代器,例如对于一个数组获得了数组这个可迭代对象的默认迭代器,并操作它遍历了数组中的元素。 ES6 新的数组方法、集合、for-of 循环、展开运算符(...)甚至异步编程都依赖于迭代器(Iterator )实现。本文会详解 ES6 的迭代器与生成器,并进一步挖掘可迭代对象的内部原理与使用方法 ...

    terasum 评论0 收藏0
  • JavaScript 设计模式(五):迭代模式

    摘要:文章内容分两部分前半部分为迭代器模式概念后半部分为中迭代器上半部分开始迭代器模式提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。下半部分开始的迭代器迭代器等同于遍历器。执行该函数,会返回一个遍历器对象。 showImg(https://segmentfault.com/img/bVbuyaZ?w=800&h=600); 文章内容分两部分: 前半部分为 迭...

    zhou_you 评论0 收藏0
  • ES6Iterator&Generator

    摘要:可迭代对象就具有属性,它是一种与迭代器密切相关的对象。它通过指定的函数可以返回一个作用于附属对象的迭代器。迭代器特点每次调用方法时,返回一个数组,数组中两个元素,分别表示键和值。示例之输出输出输出之迭代器特点返回集合中存在的每一个键。 Iterator由来 不推荐Iterator方法。 Iterator 函数是一个 SpiderMonkey 专有特性,并且会在某一时刻被删除。有一点,需...

    xietao3 评论0 收藏0
  • [译]JavaScript ES6迭代指南

    摘要:前言又称提供一个全新的迭代器的概念,它允许我们在语言层面上定义一个有限或无限的序列。后者可以被用来帮助我们理解迭代器。但是当我们使用迭代器时,这个问题就迎刃而解了。是中的新语法,用来配合迭代器。这是因为数组的迭代器只返回其中预期的元素。 前言 EcmaScript 2015 (又称ES6)提供一个全新的迭代器的概念,它允许我们在语言层面上定义一个(有限或无限的)序列。 暂时先抛开它...

    daryl 评论0 收藏0

发表评论

0条评论

jkyin

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<