当前位置: 首页 > 面试题库 >

node.js中的addListener(event,listener)和on(event,listener)方法之间有什么区别?

方绪
2023-03-14
问题内容

在这里,我无法理解这两种方法之间的基本区别。

var events = require('events');
var eventEmitter = new events.EventEmitter();



var listner1 = function listner1() {
    console.log('listner1 executed.');
}

var listner2 = function listner2() {
    console.log('listner2 executed.');    
}

eventEmitter.addListener('connection', listner1);

eventEmitter.on('connection', listner2);

eventEmitter.emit('connection');

问题答案:

.on()``.addListener()与EventEmitter对象完全相同。

直接来自EventEmitter源代码:

EventEmitter.prototype.on = EventEmitter.prototype.addListener;

在GitHub存储库中进行检查,从2010年7月3日开始执行此检入,其中包含以下注释:
“ Experimental:’on’作为’addListener’的别名”

2017年更新:
的文档EventEmitter.prototype.addListener()现在说:

的别名emitter.on(eventName, listener)



 类似资料:
  • 问题内容: 我正在尝试在PHP中创建类似CMS的系统。使它尽可能模块化和可扩展。 有人可以为我提供在PHP中创建事件侦听器系统(例如Drupal系统的非常简化的版本),创建钩子并在一个简短的示例中实现它们的最佳实践方案也很不错。 问题答案: 嗯,从实现角度看,确实有三种不同的方法可以做到这一点(请注意,这些是面向对象的设计模式,但是您可以根据需要在功能上或过程上实现它们)。 1.观察者模式 您可以

  • 问题内容: 我正在制作一个简单,非常轻便的前控制器。我需要将请求路径匹配到不同的处理程序(操作),以便选择正确的处理程序。 在我的本地计算机上并返回相同的结果。但是我不确定他们将在生产环境中返回什么。 那么,这些方法有什么区别,我应该选择什么? 问题答案: 给出URI后面的额外路径信息,用于访问Servlet,其中给出完整的URI。 我本以为它们会有所不同,因为首先必须为Servlet配置自己的U

  • 问题内容: 我一直以为功能和方法是相同的,直到我通过“ Swift编程语言”电子书学习Swift 之前。我发现我 不能greet(“John”, “Tuesday”)用来调用在类中声明的函数, Here is the code:- 当我在Objective-C中编程时,我从未意识到这种差异。 Swift中的函数和方法之间有什么区别? 在Swift中什么时候使用函数以及何时使用方法? 问题答案: 经

  • 问题内容: 在Java 8中,和方法之间有什么区别? 问题答案: 双方map并可以应用到他们都回报。不同之处在于,该map运算为每个输入值生成一个输出值,而该运算为每个输入值生成任意数量(零个或多个)的值。 这反映在每个操作的参数中。 该map操作采用一个,对输入流中的每个值调用,并产生一个结果值,该结果值发送到输出流。 该操作采用的功能在概念上要消耗一个值并产生任意数量的值。但是,在Java中,

  • 问题内容: 在此示例中: 无法编译为: 而被编译器接受。 这个答案说明唯一的区别是,与不同,它允许您稍后引用类型,似乎并非如此。 是什么区别,并在这种情况下,为什么不第一编译? 问题答案: 通过使用以下签名定义方法: 并像这样调用它: 在jls§8.1.2中,我们发现(有趣的部分被我加粗了): 通用类声明定义了一组参数化类型(第4.5节), 每种可能通过类型arguments调用类型参数节的类型

  • 本文向大家介绍HTTP协议中的GET和POST方法之间有什么区别?,包括了HTTP协议中的GET和POST方法之间有什么区别?的使用技巧和注意事项,需要的朋友参考一下 GET方法 GET方法发送附加到页面请求的已编码用户信息。页面和编码信息由?分隔。字符如下- GET方法是将信息从浏览器传递到Web服务器的默认方法,它会生成一个长字符串,该字符串出现在浏览器的Location:box中。建议最好不