Javascript 在节点模块module.exports中使用胖箭头

Javascript 在节点模块module.exports中使用胖箭头,javascript,node.js,ecmascript-6,Javascript,Node.js,Ecmascript 6,我不熟悉节点模块。我试过了 module.exports = function (firstName, lastName) { this.firstName = firstName; this.lastName = lastName; this.fullName = function () { return this.firstName + ' ' + this.lastName; } } 然后 let person1=新人“Rajesh”,“

我不熟悉节点模块。我试过了

module.exports = function (firstName, lastName) {
    this.firstName = firstName;
    this.lastName = lastName;
    this.fullName = function () { 
        return this.firstName + ' ' + this.lastName;
    }
}
然后

let person1=新人“Rajesh”,“Dhundiyal”

这很有效。但当我尝试在module.exports中使用胖箭头时,它不起作用

e、 g.module.exports=firstName,lastName=>{

由于person不是构造函数,所以稍后会出现错误。我不知道为什么会发生这种情况。有人能告诉我为什么fat arrow在这里不起作用。

此in arrow函数与其他普通函数不同。此in arrow函数指向定义arrow函数的上下文,因此不能用作构造函数 请参阅:

箭头函数表达式的语法比函数表达式短,并且不绑定自己的this、arguments、super或new.target。这些函数表达式最适合于非方法函数,并且不能用作构造函数


箭头函数不创建自己的。箭头函数中的此作用域指的是更高级别的作用域。换句话说,此作用域就好像没有箭头函数一样。如果您想看到箭头函数和常规函数之间的唯一区别,请使用console.logthis。所以在这种情况下我不能使用胖箭头。对吗?不,您可以t、 箭头函数用于缩短函数和不绑定此函数。