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)

相关推荐

  • 怎么理解python决策树的基本原理

    技术怎么理解python决策树的基本原理本篇文章给大家分享的是有关怎么理解python决策树的基本原理,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。决策树是

    攻略 2021年12月3日
  • 12 请求与响应

    技术12 请求与响应 12 请求与响应1.请求Request# 请求对象
    # from rest_framework.request import Requestdef __init__(self, r

    礼包 2021年12月23日
  • 抖音刷点赞,,抖音怎么获得大量点赞?

    技术抖音刷点赞,,抖音怎么获得大量点赞?如今越来越多的人玩抖音,可以说是生活中的一件必备品,它拥有很多的知识、乐趣和经验。希望玩抖音的人,肯定少不了要很多粉丝,那怎么能让自己的粉丝涨得更快一点呢?怎样才能验出来希望玩抖音

    测评 2021年11月11日
  • 罐装奶粉打开了多久不能吃,婴儿奶粉开封后多久不能吃

    技术罐装奶粉打开了多久不能吃,婴儿奶粉开封后多久不能吃很多宝妈跟题主一样罐装奶粉打开了多久不能吃,对奶粉的保质期有疑问——奶粉吃不完是不是就不能吃了呢?是不是就变质了呢?众所周知,婴幼儿奶粉营养丰富,蛋白质含量高,而丰富

    生活 2021年10月31日
  • Linux nmap/隧道工具

    技术Linux nmap/隧道工具 Linux nmap/隧道工具一、Nmap简介:Nmap(Network Mapper)网络映射器是一款开源的网络探测和安全审核的工具,应用在端口扫描等场景上;1.

    礼包 2021年12月6日
  • 【配置与安装】解决类似umount target is busy挂载盘卸载不掉问题

    技术【配置与安装】解决类似umount target is busy挂载盘卸载不掉问题 【配置与安装】解决类似umount target is busy挂载盘卸载不掉问题解决类似umount targe

    礼包 2021年12月6日