《JavaScript 设计模式与开发实践》 学习笔记 【第七章:迭代器模式】

迭代器模式:

提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。

迭代器模式可以将迭代过程从业务逻辑中分离出来。

在使用迭代器模式后,及时不关心对象的内部构造,也可以按照顺序访问其中的每个元素。

内部迭代器和外部迭代器:

1.内部迭代器:内部定义好迭代规则,完全接收整个迭代过程,外部值需要一次初始调用。

例如foreach,map等。

优点:调用方便,外接不关心迭代器内部实现,和迭代器的交互也仅仅是一次初始调用。

缺点:迭代规则被提前规定,无法灵活操控。无法同时迭代两个数组。

2.外部迭代器:必须显式的请求迭代下一个元素。

外部迭代器增加了一些调用的复杂度,但也相对的增强了迭代器的灵活性,我们可以手工控制迭代的过程或者顺序。

《JavaScript 设计模式与开发实践》 学习笔记 【第七章:迭代器模式】_第1张图片

《JavaScript 设计模式与开发实践》 学习笔记 【第七章:迭代器模式】_第2张图片

内部迭代器和外部迭代器 在实际生产中没有优劣之分,究竟使用哪个要根据需求场景而定。

迭代器模式 是一种相对简单的模式,简单到很多时候我们都不认为它是一种设计模式。

目前,绝大部分语言都内置了迭代器。

你可能感兴趣的:(设计模式,javascript,前端)