JS实现简陋的观察者模式
Posted 飞尽堂前燕
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS实现简陋的观察者模式相关的知识,希望对你有一定的参考价值。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="box"> 点我发布事件 </div> <script src="js/jquery-2.1.0.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> var pubSub = function(){}; pubSub.prototype.threadPool = []; pubSub.subscribe = function(name,cb){ pubSub.prototype.threadPool.push({ name:name, fun:cb }); } pubSub.publish = function(name){ var threadPool = pubSub.prototype.threadPool; for (var i in threadPool) { setTimeout(function(i){ if(threadPool[i][‘name‘]==name){ threadPool[i][‘fun‘](); } }(i),0); } } $("#box").click(function(){ pubSub.publish(‘dateChange‘); }) pubSub.subscribe(‘dateChange‘,function(){ this.name = ‘lisi‘ console.log(‘hello world‘) }) pubSub.subscribe(‘dateChange‘,function(){ this.name = ‘zhangsan‘ console.log(‘这是我订阅的第二个方法‘) }) </script> </body> </html>
有时间会更新一下。。。。。。
以上是关于JS实现简陋的观察者模式的主要内容,如果未能解决你的问题,请参考以下文章