var mySelf = {
name: "dina",
job: "Programmer",
yearOfBirth: 1993,
age: () => 2019 - this.yearOfBirth
};
let result = mySelf.age();
console.log(result);
Run Code Online (Sandbox Code Playgroud)
结果是 NaN
请帮帮我实际发生了什么?
箭头函数继承外部上下文(Window在本例中)而不是对象上下文,而是使用普通函数.
var mySelf = {
name: "dina",
job: "Programmer",
yearOfBirth: 1993,
age: function() { return 2019 - this.yearOfBirth }
};
let result = mySelf.age();
console.log(result);Run Code Online (Sandbox Code Playgroud)
显示箭头函数接收词汇this-
const o =
{ func: () => this === window }
console.log(o.func()) // trueRun Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
82 次 |
| 最近记录: |