此问题已在此处找到答案:
es6对象中的方法:使用箭头函数(6个答案)
“箭头功能”和“功能”是否等效/可互换((3个答案)
“this”关键字是如何工作的((21个答案)
两天前关门了。
let greetings = {
fullName : "elham zeinodini",
getFullName : () => {
return this.fullName;
},
Greet : message => console.log(`${message} ${this.getFullName()} !!`)
}
console.log(greetings.fullName);
greetings.Greet("Hello");
3条答案
按热度按时间67up9zun1#
lskq00tm2#
从字面上说,这意味着
getFullName
论语境this
这不是一个函数。您试图调用的不是函数的东西。为什么呢?因为你不能使用
this
就像使用箭头函数引用周围的对象一样。根据您的环境,它可能引用窗口对象(在浏览器中)。窗口对象没有调用的函数getFullName
. 因此该属性的计算结果为undefined
. 它不是一个函数,因此是错误的。改用“常规”函数声明。
getFullName: function() {...}
wlzqhblo3#
问题在于您的箭头函数,它不允许您捕获
this
上下文改写如下: