Node.js EventEmitter中两个事件

在node.js的eventEmitter里有两个事件,newListener和removeListener
newListener
newListener是在新监听器添加的时候被被触发的。
接收参数:
event--字符串,事件名称
listener--处理事件函数
例子:

let events = require("events");
let eventEmitter = new events.EventEmitter();

eventEmitter.on("newListener",(event,Listener)=>{
    if(event==="event"){
        console.log("B")
    }
});

eventEmitter.on("event",()=>{
   console.log("A");
});

eventEmitter.emit("event");

输出:
B
A
正明在添加event监听器的时候先触发newListener了.

removeListener
removeListener是当监听器从指定监听器数组中被移除的时候,而且此操作会改变之后那些监听器的索引.
接收参数:
event--字符串,事件名称
listener==处理函数
例子

let events = require("events");
let eventEmitter = new events.EventEmitter();

eventEmitter.on("removeListener",(event,Listener)=>{
    if(event==="event"){
        console.log("B")
    }
});

eventEmitter.on("event",()=>{
   console.log("A");
});

eventEmitter.emit("event");
eventEmitter.removeAllListeners("event");

输出
A
B
证明event被移除的时候触发的

注意:
removeListener和newListener是不能同时触发的。newListener会影响removeListener。

刚开始学习node.js水平有限,以此给自己学习做个记录,如果有错误的地方还请指正。

你可能感兴趣的:(Node.js EventEmitter中两个事件)