• Node.js Video Tutorials

NodeJS - emitter.eventNames() 方法


emitter.eventNames() 用于检索一个包含已注册监听器的事件列表的数组。此方法不接受任何参数。数组中的值可以是字符串或符号。

此方法属于Eventemitter类,它是node:events模块的内置类。

语法

以下是 NodeJs emitter.eventNames() 方法的语法:

emitter.eventNames()

参数

此方法不接受任何参数。

返回值

此方法返回一个数组列表,其中包含发射器已注册监听器的事件。

示例 1

以下是 NodeJs emitter.eventNames() 方法的基本示例

这里,我们导入了 node:events 模块。然后我们创建了一个包含消息的函数 one。之后,使用 emitter.eventNames() 方法,我们返回一个数组,其中列出了已注册监听器的事件。因此,myEvent.eventNames() 方法将返回一个包含事件的数组列表。

const EventEmitter = require('node:events');
const myEvent = new EventEmitter();

function one(){
  console('Welcome to Earth');
};

myEvent.on('event', one);

console.log(myEvent.eventNames());

输出

上述程序产生以下输出:

[ 'event' ]

示例 2

在这个程序中,我们创建了多个监听器函数 one()、two() 和 three()。因此,myEvent.eventNames() 方法将返回一个包含 event1、event2 和 event3 的数组列表。

const EventEmitter = require('node:events');
const myEvent = new EventEmitter();

function one(){
  console('Hi');
};

function two(){
  console.log('Vanakkam');
};

function three(){
  console.log('Sari');
};

myEvent.on('event1', one);
myEvent.on('event2', two);
myEvent.on('event3', three);

console.log(myEvent.eventNames()); 

输出

上述程序产生以下输出:

[ 'event1', 'event2', 'event3' ]

示例 3

这里,我们创建了 Symbol(‘Symbol’),因为 eventName 可以是字符串和符号。然后我们创建了一个监听器函数 fun()。因此,myEvent.eventNames() 方法将返回一个包含 Symbol(symbol) 的数组列表,因为我们传递的 eventName 是一个符号。

const EventEmitter = require('node:events');
const myEvent = new EventEmitter();
const symb = Symbol('symbol');

function fun(){
  console('Welcome home...');
};

myEvent.on(symb, fun);

console.log(myEvent.eventNames());

输出

上述程序产生以下输出:

[ Symbol(symbol) ]
nodejs_events.htm
广告
© . All rights reserved.