本篇文章给大家带来的内容是关于javascript事件接收与发送机制理解(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
其实事件的发送与接收机制很简单,只是没有去思考而已
在node模块中使用的就会比较的多
如
var events=require('events'); var eventEmitter=new events.EventEmitter(); eventEmitter.on('say',function(name){ console.log('Hello',name); }) eventEmitter.emit('say','Jony yu');
登录后复制
在vue中也父子组件的传递也采用了事件的发送与接收,emit和on来制作
那么接下来我们来看一看吧
function myEvent() { this.on = function() { if (!this.handles) { this.handles = {}; } if (!this.handles[eventName]) { this.handles[eventName] = []; } this.handles[eventName].push(callBack); } this.emit = function() { if (this.handles[eventName]) { for (var i = 0; o < this.handles[eventName].length; i++) { this.handles[eventName][i](obj); } } } return this; }
登录后复制
测试一下
var event1=new Events(); var event2=new Events(); event1.on('say',function(){ console.log('Jony event1'); }); event2.on('say',function(){ console.log('Jony event2'); }) event1.emit('say'); event2.emit('say'); //event1、event2之间的事件监听互相不影响 //输出结果为'Jony event1' 'Jony event2'
登录后复制
这就是事件发送与接收的机制。
以上就是javascript事件接收与发送机制理解(代码示例)的详细内容,更多请关注Work网其它相关文章!