前端常见设计模式之发布订阅模式
基础
观察者模式是对象的行为模式,又叫发布订阅者模式,模型视图模式,监听者模式或者 Dependents 模式。发布-订阅
脏检测
数据劫持
数据模型
对象存在两种熟悉描述符:
- 数据描述符 数据描述符是一个具有值的属性,该值可能是可写的,也可能不是可写的。
- 存取描述符 存取描述符是由getter-setter函数对描述的属性。
描述符必须是这两种形式之一;不能同时是两者。
数据描述符 和 存取描述 都具有
- configure 为true时,该属性描述符才能改变,默认为false
- enumerable 为true时,该属性能够出现在对象的枚举属性中,默认为false
数据描述符:
- value 可以是任何有效的 javascript,默认为undefined
- writable 当且仅当为 true时, value才能被赋值运算符改变,默认为false
存取描述符:
- get 给一个属性提供getter方法,如果没有 getter 则为 undefined。方法执行时没有参数传入,但是会传入this对象 默认为undefined
- set 给一个属性提供setter方法,当属性值修改时,触发执行该方法。该方法将接受唯一参数,即该属性新的参数值。object.observe()
object.defineProperty
object.proxy
发布-订阅模式
简单版
复杂版
原生 与 jquery
Nodejs
最后更新于