js中如何自定义迭代行为

说明

1、可迭代对象是实现了@@iterator方法的对象,那么可迭代对象就可以通过重写@@iterator方法实现自定义迭代行为。

@@iterator是一个可以返回迭代器对象的函数。

2、当next方法返回时,迭代结束。

实例

constarr=[1,3,5,7];
arr[Symbol.iterator]=function(){
constctx=this;
const{length}=ctx;
letindex=0;
return{
next:()=>{
if(index<length){
return{value:ctx[index++]*2,done:false};
}else{
return{done:true};
}
}
};
};

[...arr];//[2,6,10,14]

以上就是js中自定义迭代行为的方法,希望对大家有所帮助。更多js学习指路:js教程

原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容