Iterator,迭代器协议,可迭代协议

本文介绍了JavaScript中的迭代器协议和可迭代协议。迭代器协议定义了对象通过next方法产生一系列值的标准方式,而可迭代协议允许对象自定义其迭代行为。for...of循环依赖于迭代器协议,当尝试迭代一个非可迭代对象时,会抛出TypeError。文章还讨论了Symbol.iterator方法及其在Array、Set、Map、String等内置对象中的应用。

迭代器协议是什么

迭代器协议定义了产生一系列值(无论是有限个还是无限个)的标准方式。当值为有限个时,所有的值都被迭代完毕后,则会返回一个默认返回值。

只要满足迭代器协议议的对象都可以成为迭代器,迭代器协议,是指对象要定义名为next的无参方法,并且next会返回一个对象,对象包含done(boolean)和value属性,比如:

var iterator = {
   
   
    count : 0,
    next : function(){
   
   
        return {
   
   
            done : this.count > 10,
            value : 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值