Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 从箭头函数打印事件对象_Node.js_This_Arrow Functions - Fatal编程技术网

Node.js 从箭头函数打印事件对象

Node.js 从箭头函数打印事件对象,node.js,this,arrow-functions,Node.js,This,Arrow Functions,如果我想使用回调函数打印Node.js中的事件对象,可以这样做: 例1 但是,如果我尝试使用箭头函数,它将不起作用: 例2 在示例2中,使用关键字“this”打印事件对象的值需要更改什么?尝试访问“this”的本地值而不是父值。怎么做?这是由于词汇作用域造成的。箭头函数不绑定它们自己的值,它们继承父作用域中的值。是否有可能重复?是否有办法在这种情况下使用箭头函数打印“this”的预期值?文档中有说明:@lawrencerone我读过文档。它讨论了这个问题,但没有解释如何解决它。这是由于词汇范围的

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

例1 但是,如果我尝试使用箭头函数,它将不起作用:

例2
在示例2中,使用关键字“this”打印事件对象的值需要更改什么?尝试访问“this”的本地值而不是父值。怎么做?

这是由于词汇作用域造成的。箭头函数不绑定它们自己的值,它们继承父作用域中的值。是否有可能重复?是否有办法在这种情况下使用箭头函数打印“this”的预期值?文档中有说明:@lawrencerone我读过文档。它讨论了这个问题,但没有解释如何解决它。这是由于词汇范围的限制。箭头函数不绑定它们自己的值,它们继承父作用域中的值。是否有可能重复?是否有办法在这种情况下使用箭头函数打印“this”的预期值?文档中有说明:@lawrencerone我读过文档。它谈论这个问题,但没有解释如何解决它。
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 }
*/
const events = require( 'events' );

var eventEmitter = new events.EventEmitter();

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

eventEmitter.emit( 'customEventNameGoesHere' );

/* Sample output:
{}
*/