迭代和遍历的微妙区别:
- 迭代:不管集合中有多少个数据,只管一个一个的从集合中拿出数据来,不需要知道集合中具体有多少个数据。可以不一次把集合中的所有数据都取完,而是想什么时候取下一个就什么时候取下一个!
- 遍历:我们对集合中有多少个数据是已知的,然后将所有的数据全部拿出来。遍历会一次性全部把集合中的数据全部去完,中途不能暂停!
迭代器:对迭代过程的一种封装,通常为一个对象
迭代模式:一种设计模式,用于统一迭代过程,规范了迭代器的规格:
- 迭代器应该具有得到下一个数据的能力
- 迭代器应该具有判断是否还有后续数据的能力
在js中规定,如果有一个对象,具有next属性,该属性为一个函数,该函数返回一个对象,这个对象具有两个属性,分别为value(当前迭代出来的值)和done(是否迭代完成)。那么该对象就是一个迭代器!
网友评论