JavaScript观察者模式(2)

<body onload=https://www.linuxidc.com/Linux/2017-10/"inint()"> <div id=https://www.linuxidc.com/Linux/2017-10/"div01"></div> <script type=https://www.linuxidc.com/Linux/2017-10/"text/Javascript" src=https://www.linuxidc.com/Linux/2017-10/"observer.js"></script> <input type=https://www.linuxidc.com/Linux/2017-10/"button" value=https://www.linuxidc.com/Linux/2017-10/"CCTV发送" id=https://www.linuxidc.com/Linux/2017-10/"cctv"> <input type=https://www.linuxidc.com/Linux/2017-10/"text" id=https://www.linuxidc.com/Linux/2017-10/"cctvText"> <br><br><br> <input type=https://www.linuxidc.com/Linux/2017-10/"button" value=https://www.linuxidc.com/Linux/2017-10/"国防部报社发送" id=https://www.linuxidc.com/Linux/2017-10/"gfb"> <input type=https://www.linuxidc.com/Linux/2017-10/"text" id=https://www.linuxidc.com/Linux/2017-10/"gfbText"> <br><br><br> <textarea id=https://www.linuxidc.com/Linux/2017-10/"info" cols=https://www.linuxidc.com/Linux/2017-10/"60" rows=https://www.linuxidc.com/Linux/2017-10/"20"></textarea> <script src=https://www.linuxidc.com/Linux/2017-10/"Js/设计模式第三部分/观察者模式/lib.js"></script> <script src=https://www.linuxidc.com/Linux/2017-10/"Js/设计模式第三部分/观察者模式/观察者模式.js"></script> </body>

效果为:

(1)cctv模块的

JavaScript观察者模式

 

(2)gfb的效果为:

JavaScript观察者模式

  补充:上述用到的forEach方法和filter方法代码为:

 

Function.prototype.method =https://www.linuxidc.com/Linux/2017-10/ function(name, fn) { this.prototype[name] =https://www.linuxidc.com/Linux/2017-10/ fn; return this; }; if (!Array.prototype.forEach) { Array.method('forEach', function(fn, thisObj) { var scope = thisObj || window; for ( var i = 0;len < this.length; ++i ) { //这样写不是简单的函数调用,是在函数调用的同事把this重新定位 fn.call(scope, this[i], i, this); } }); } //Array过滤器 if (!Array.prototype.filter ) { Array.method('filter', function(fn, thisObj) { var scope = thisObj || window; var a =https://www.linuxidc.com/Linux/2017-10/ []; for ( var i = 0;i < this.length; ++i ) { //看看过滤函数,真留下来,假的删除 if ( !fn.call(scope, this[i], i, this) ) {//过滤的实质是返回除开与当前对象相等的其余所用的对象集合 continue; } a.push(this[i]); } //返回新的数组 return a; }); }

 

 总结:

JavaScript观察者模式

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/e82e26aebf22415d036f4b92421bb59e.html