随笔记:实现外部迭代器
- 迭代器
- 迭代器分为内部迭代器和外部迭代器
- 内部迭代器:迭代器的内部已经定义好了迭代规则,它完全接手整个迭代过程,外部只需要一次初始调用
- 外部迭代器:必须显式地请求迭代下一个元素。外部迭代器增加了一些调用的复杂度,但相对也增强了迭代器的灵活性,我们可以手工控制迭代的过程或者顺序。
- 迭代器分为内部迭代器和外部迭代器
- 实现外部迭代器:示例如下
- 【自我理解】:就是自定义出迭代过程中所需要的属性和方法。
var Iterator = function(obj){
var cunrrent = 0;
var next = function(){
current += 1;
};
var isDone = function(){
return current >= obj.length;
};
var getCurrItem = function(){
return obj[current];
};
return {
next:next,
isDone:isDone,
getCurrItem:getCurrItem,
length:obj.length
}
};
console.log(Iterator([1,2,3]).length);
A home is only made by the people within it.
有家人的地方才是家。