调度模式1、观察者模式是由具体目标调度的,而订阅模式是统一由调度中心调的。所以观察者模式的订阅者与发布者之间是存在依赖的,而订阅模式则不会。通知订阅者的方式2、观察者模式是通过主题…
说明1、提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示2、可分为:内部迭代器和外部迭代器内部迭代器: 内部已经定义好迭代规则,外部只需要调用一次即可。外…
说明1、可迭代对象是实现了@@iterator方法的对象,那么可迭代对象就可以通过重写@@iterator方法实现自定义迭代行为。@@iterator是一个可以返回迭代器对象的函数…
方法说明1、使用生成器函数的构造函数创建生成器函数,生成器函数返回生成器,实际使用少。2、使用function*声明的函数是生成器函数,生成器函数返回的是生成器。实例const c…
说明1、yield和yield* 只能在生成器函数中使用。生成器函数内部通过yield提前返回,前面的计数器就是利用这个特性向外部传递计数的结果。2、生成器函数通过使用 yield…
说明1、生成器函数的外部可以向next方法传达参数,该参数作为上一个yield表现的返回值。2、如果不传递参数,yield表达式返回undefined。实例const canBeS…
说明1、生成器函数的外部可以向throw方法传达参数,该参数被catch语句捕获。2、不传达参数,catch语句捕获为undefined,catch语句捕获后恢复生成器的执行,具有…
说明1、生成器的return方法结束生成器,返回Iteratorrresult。2、done为true,value向return方法传达的参数,不传达任何参数,value为unde…
好处说明1、可以把函数式编程变得简洁,没有冗余。2、尽管有多个参数,仍然可以保留数学函数的定义。3、可以将函数作为返回值输出,提前返回。实例match(/r/g, 'hello w…