nodejs 中模拟实现 emmiter 自定义事件
nodejs中模拟实现emmiter自定义事件
<!DOCTYPEhtml> <html> <head> <metacharset="UTF-8"> <title></title> <script> functionEmitter(){ this.events={};//存放事件的地方 } Emitter.prototype.on=function(type,cb){ varevents=this.events; events=events[type]=events[type]||[]; events.push(cb); }; Emitter.prototype.emit=function(type){ varargs=[].slice.call(arguments,1); varcbs=this.events[type],cb; while(cb=cbs&&cbs.shift()){ cb.apply(this,args); } }; varemitter=newEmitter(); emitter.on('customevent',function(param){ alert(param); }); emitter.on('customevent',function(){ alert(1); }); emitter.emit('customevent','xxx'); </script> </head> <body> </body> </html>