【发布时间】:2018-01-21 21:16:41
【问题描述】:
我有以下代码:
const person = {
name: 'Bob',
greet: () => {
console.log(`Hi, my name is ${this.name}`);
}
};
person.greet();
由于某种原因,它输出:
Hi, my name is undefined
我希望它输出:
Hi, my name is Bob
【问题讨论】:
-
为什么会这样?箭头函数绑定的范围不是您正在创建的对象,
this是 您正在创建它的位置。
标签: javascript ecmascript-6 arrow-functions