javascript迭代器怎么实现

技术javascript迭代器怎么实现本篇内容主要讲解“javascript迭代器怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript迭代器怎么实现”吧

本文主要讲解“如何实现javascript迭代器”。感兴趣的朋友不妨看看。本文介绍的方法简单、快速、实用。让边肖带你学习“如何实现javascript迭代器”!

在javascript中,迭代器是一个特殊的对象,它有一些专门为迭代过程设计的专有接口。所有迭代器对象都有next()方法,每次调用都会返回一个结果对象。迭代器保存指向当前集合中值的位置的内部指针。

本教程操作环境:windows7系统,javascript1.8.5版本1.8.5,戴尔G3电脑。

一、迭代器的定义:

迭代器是一个特殊的对象,它有一些专门为迭代过程设计的专有接口。所有迭代器对象都有next()方法,每次调用都会返回一个结果对象。结果有两个属性:一个是value,表示接下来要返回的值;另一个完成了,这是一个布尔值,当没有更多数据可返回时,它返回true。迭代器还保留一个指向当前集合中值的位置的内部指针,对next()方法的每次调用都将返回下一个可用值。

如果在返回最后一个值后调用next()方法,则返回的对象中完成的属性值为true,属性值包含迭代器最终返回的值。这个返回值不是数据集的一部分,它类似于函数的返回值,是函数调用过程中最后一个向调用者传递信息的方法,如果没有相关数据,则返回undefined。

二、为何会出现迭代器?

背景前提:

我相信您一定使用了for循环,空指针引用也有问题:例如,数组长度只有5,但您的索引已经达到6。轻微的逻辑错误将导致程序无法正常运行。

迭代器想要解决的问题是:

解决或减少在使用for-like循环的过程中访问变量集的错误问题。例如:空指针引用。

举个栗子:

当我们使用for循环遍历集合时,很容易出错,但是如果我们使用像forEach这样的东西,空指针引用的问题就会减少。

array.forEach(元素={ 0

//这时候不用我就可以操作器械包了

});

三、用js实现一个简单的迭代器

functionmyIterator(列表){ 0

leti=0;

返回{

next : function(){ 0

letdone=(I=list . length);

letvalue=!完成了吗?列表[I]:未定义;

返回{

done:done,

值:值

};

}

};

}从函数定义可以看出:

函数返回值是个对象,在对象中,键是下一个,值是函数;

每调用一次next(),i+1,同时返回一个对象,一个物体是一个集合的元素;

至此,相信大家对“如何实现javascript迭代器”有了更深的理解,让我们在实践中去做吧!这是网站。更多相关内容,可以去相关渠道查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/138488.html

(0)

相关推荐

  • 内存

    技术内存 内存一、物理内存和虚拟内存
    1、虚拟内存每个程序都有4G虚拟内存,相当于空头支票
    只有真正要用的时候,才会在物理内存中给你分配一块物理内存
    4kb页式管理,一页是4kb大小(物理页)2、虚拟内

    礼包 2021年12月24日
  • 尬怎么读,什么牌子的女装适合四十岁的女人

    技术尬怎么读,什么牌子的女装适合四十岁的女人你好尬怎么读,我是山宗溪,专注分享最实用最接地气的穿搭~四十岁一点都不尴尬,我觉得正是最有魅力的时候,它的魅力不是指身材、相貌,而是指阅历、思想、工作经验等等比较“虚”的东西。

    生活 2021年10月27日
  • 如何实现机器学习SVM算法

    技术如何实现机器学习SVM算法如何实现机器学习SVM算法,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。SVM支持向量机是建立于统计学习理论上的一种分类算

    攻略 2021年11月15日
  • DFS简介与Shell管理命令是什么

    技术DFS简介与Shell管理命令是什么这篇文章给大家介绍DFS简介与Shell管理命令是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、HDFS基本概述1、HDFS描述大数据领域一直面对的两

    攻略 2021年11月11日
  • Linux系统如何安装ST-Link v2烧录环境

    技术Linux系统如何安装ST-Link v2烧录环境这篇文章主要介绍Linux系统如何安装ST-Link v2烧录环境,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、首先我们需要安装必要的库和

    攻略 2021年11月18日
  • Git的常用操作命令有哪些

    技术Git的常用操作命令有哪些这篇文章主要为大家展示了“Git的常用操作命令有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Git的常用操作命令有哪些”这篇文章吧。

    攻略 2021年10月25日