javascript - 关于node。js里面event 模块中 EventEmitter对象on方法返回的值
伊谢尔伦
伊谢尔伦 2017-04-11 12:05:53
0
2
329
var a=new require('events').EventEmitter()
a.on('connection',fn);
//这里a返回的值是不是就是EventEmitter对象
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(2)
洪涛

是的,这样一来,你就可以用链式的方法进行编写多个事件订阅。不过你的代码有点问题,建议修改为这样:

var EventEmitter = require('events').EventEmitter;
var a = new EventEmitter();
a.on('connection',function(){})
 .on("test", function(){});
いいねを押す +0
巴扎黑

先抛出结论:是的

原因:

var EventEmitter = require('events').EventEmitter;
var a = new EventEmitter();
a.on('connection', function() {})

a.on在node中指向的是EventEmitter.prototype.addListener

我们直接看调用堆栈

on实际上相当于调用了addListener

addListener的调用

_addListener的调用

可以看到最终返回的是target,也就是addListener中的this,
这里是我们EventEmitter的实例,也就是例子中的a

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!