迭代器,通俗的讲就是递归。
有时候,默认的for循环满足不了要求去递归或遍历一个对象
var goJhou=(function(){
var index=0;
var arr=[1,2,3];
var length=arr.length;
return {
//下一项
next: function(){
var element;
if(!this.next()) return null;
element = arr[index];
index++;
return element;
},
//是否有下一项
hasNext:function(){
return index
上方是最简单的迭代器样子,代码也很方便理解。
像C#中迭代器IEnumrator就用的是类似这样的逻辑。
大家也可以参考各语言List的各个方法,去还原迭代器
请登录后评论
TOP
切换版块
递归这个可以参考