-
什么是迭代?
从一个数据集合中按照一定的顺序,不断取出数据的过程 -
迭代和遍历的区别?
迭代强调的是依次取数据,并不保证取多少,也不保证把所有的数据取完
遍历强调的是要把整个数据依次全部取出 -
迭代器
对迭代过程的封装,在不同的语言中有不同的表现形式,通常为对象 -
迭代模式
一种设计模式,用于统一迭代过程,并规范了迭代器规格:
- 迭代器应该具有得到下一个数据的能力
- 迭代器应该具有判断是否还有后续数据的能力
const ary = [1, 3, 5, 7, 9];
function Iterator(arrayNumber) {
let i = 0;
return {
next() {
var iterator = {
value: arrayNumber[i],
done: i >= arrayNumber.length,
}
i++;
return iterator;
}
}
}
const strarry = Iterator(ary);
//控制台输入strarry.next();
strarry.next();
{value: 1, done: false}
strarry.next();
{value: 3, done: false}
strarry.next();
{value: 5, done: false}
strarry.next();
{value: 7, done: false}
strarry.next();
{value: 9, done: false}
strarry.next();
{value: undefined, done: true}