在node.js中,为什么EventEmitter作为循环引用包含在事件中?

在node.js中,为什么EventEmitter作为循环引用包含在事件中?,node.js,Node.js,以下代码显示事件对象的内容 const events = require('events'); console.log(events); 输出是, { [Function: EventEmitter] EventEmitter: [Circular], usingDomains: false, defaultMaxListeners: [Getter/Setter], init: [Function], listenerCount: [Function] } 对Event

以下代码显示
事件
对象的内容

const events = require('events');
console.log(events);
输出是,

{ [Function: EventEmitter]
  EventEmitter: [Circular],
  usingDomains: false,
  defaultMaxListeners: [Getter/Setter],
  init: [Function],
  listenerCount: [Function] }
EventEmitter
使用循环引用肯定会有好处,但我不确定它是什么。为什么他们使用此模式构造
事件
对象

对于
EventEmitter

这可能是为了向后兼容

events
模块wayyyy back的文档表明这是导入
EventEmitter
的唯一方法