求解一个node入门问题,on()和addListener()的区别
发布于 4天前 作者 HongzhiZhao 193 次浏览 来自 问答

读教程时看到在服务器端响应post请求的时候,文章里用触发data和end事件去处理数据流,用req.addListener实现对事件的侦听,代码如下: 1.jpg 但是读Node API的时候看到了官网上用req.on()实现了同样的功能,代码如下: 2.jpg

问题:

  1. 想请问一下各位,on和addListner有什么区别?在API里看到了这段话: 3.jpg 所以我自己理解这两个方法功能是一样的,但是为什么同样功能的方法要定义两种形式?

2.如何在API里查看req和res这两个对象的成员属性和方法?我没找到在哪里…(请勿吐槽,新手见谅)

4 回复

on 和 addListener 没有区别,别名而已。估计是程序员懒,on 少打字但是又没 addListener 直白

如同jq里的on,bind

参考Readable的代码(server的request继承之),两者相同。

Readable.prototype.addListener = Readable.prototype.on;

EventEmitter还有这么个测试……

assert.equal(E.on, E.addListener); // Same method.
回到顶部