从箭头函数打印事件对象

时间:2019-05-22 20:08:53

标签: node.js this arrow-functions

如果我想使用回调函数在Node.js中打印事件对象,则可以这样做:

示例1

const events = require( 'events' );

var eventEmitter = new events.EventEmitter();

eventEmitter.on( 'customEventNameGoesHere', function() {
    console.log( this );
} );

eventEmitter.emit( 'customEventNameGoesHere' );

/* Sample output:
EventEmitter {
  _events:
   [Object: null prototype] { customEventNameGoesHere: [Function] },
  _eventsCount: 1,
  _maxListeners: undefined }
*/

但是,如果我尝试使用箭头功能,则无法使用:

示例2

const events = require( 'events' );

var eventEmitter = new events.EventEmitter();

eventEmitter.on( 'customEventNameGoesHere', () => { console.log( this ); } );

eventEmitter.emit( 'customEventNameGoesHere' );

/* Sample output:
{}
*/

我需要在示例2中进行哪些更改才能使用关键字“ this”打印事件对象的值?尝试访问“ this”的本地值而不是父值。怎么样?

0 个答案:

没有答案