02 2023 档案
摘要:// es6 模式 内置 function* myIterator() { yield 1; yield 2; yield 3; } for (const iterator of myIterator()) { console.log(iterator); } // es5 手动 function
阅读全文
摘要:观察者模式与发布-订阅模式的区别 观察者模式:发布者会直接联系订阅者 发布-订阅模式:发布者不和订阅者进行直接联系,而是通过第三方进行联系(vue响应式原理,evenbus)
阅读全文
摘要:在js行为型设计模式中。策略模式与状态模式大同小异。下面,来说说它的区别。 相同点:都会使用行为函数封装行为,通过委托来分发行为。 不同点:策略模式中的行为函数会更加割裂,彼此没有任何关系。而状态模式中的行为函数与状态主体之间存在联系,由状态主题把他们串在一起(行为函数内部会对主体内容有影响),这也
阅读全文
摘要:装饰器模式:在不改变原有对象的结构下,通过对其包装拓展,使原有对象可以满足用户的更复杂要求。 适配器模式:把一个类的接口变换成客户端所期待的另一种接口。 代理模式:在某种情况下,出于种种考虑/限制。一个对象不能直接访问另一个对象,需要通过第三方代理后才能继续访问。(比如FQ上网就是代理模式)
阅读全文
摘要:工厂模式:就是将创建对象的过程封装。封装不变的,保留入参迎接变化。 抽象工厂模式:在超级工厂的基础上创建其他工厂,保留其他工厂不变的公共部分,其他工厂在此基础上自由拓展。保持开放封闭原则,即使用抽象类,可拓展,不可直接修改。 共同点:分离一个系统中变与不变的部分。 区别:场景复杂度。抽象工厂的复杂度
阅读全文