迭代器模式
特点
- 顺序访问的一个有序集合
- 使用者无需知道集合的内部结构(封装)
介绍
- 为类数组与字面量对象提供类似于数组的循环迭代并提供回调函数进而完成循环处理的特定业务需求
- 这种模式本质是为了统一封装对象的遍历,提供有序集合的遍历方式。但是各种语言都有对应的支持,所以一般是用不上的。
demo
function each(arr){
var index = 0;
var next = function(){
return arr[index++];
}
var hasNext = function(){
return index !== arr.length;
}
return { next,hasNext };
}
const list = each([1,2,3]);
while(list.hasNext()){
console.log(list.next())
}