php设计模式课程---4、观察者模式的好处是什么
一、总结
一句话总结:
方便选择之后去控制监听的板块数:比如选择男士之后,我可以决定监听广告里面的第二和第三板块。
1、为什么有观察者模式?
错误理解:根据不同的选择有不同的功能,比如选择男士,会有男士广告,选择女士,会有女士广告
正确理解:可以决定选择变化之后监听哪些板块,比如选择男士之后,我可以决定监听广告里面的第二和第三板块。
2、观察者模式如何实现(或者叫通知者模式更加合适)?
把监听的板块的名字放到一个数组,如果选择的对象发生变化,遍历数组更新对应的板块(执行对应板块的选择方法)。比如板块三,如果是男的,就选择汽车,是女的就选择化妆品
test3.update = function (sel) { if(sel.value == '1') { this.innerHTML = '大众汽车'; } else if (sel.value == '0') { this.innerHTML = '化妆品好好好'; }}
二、观察者模式的好处是什么
1、截图
2、代码
1 2 3 4 5 6Document 7 8 16 17 21 22 23新闻24广告25 26 77
没加监听者模式的选择后改变的代码
1 2 3 4 5 6Document 7 8 16 17 21122新闻23广告24 25 37