哈哈。。写了一个钟,一点一点加功能。 1 function Publisher(){ 2 this.subscribers = []; //存储订阅者 3 this.news = []; //存储要发布的消息 4 } 5 //使用“推”方式:由publisher推消息给Subscribers 6 7 8 Publisher.prototype = { 9 deliver : function(data){ 10 var that = this;11 this.subscribers.forEach(function(){12 ... Read More
1.介绍一下事件驱动编程---快餐店点餐。 在基于线程的方式中(thread-based way)你到了柜台前,把你的点餐单给收银员或者给收银员直接点餐,然后等在那直到你要的食物准备好给你。收银员不能接待下一个人,除非你拿到食物离开。想接待更多的客户,容易!加更多的收银员!当然,我们知道快餐店其实不是这样工作的。他们其实就是基于事件驱动方式,这样收银员更高效。只要你把点餐单给收银员,某个人已经开始准备你的食物,而同时收银员在进行收款,当你付完钱,你就站在一边而收银员已经开始接待下一个客户。在一些餐馆,甚至会给你一个号码,如果你的食物准备好了,就呼叫你的号码让你去柜台取。关键的一点是,你没有阻. Read More