猿问

ES6 - 箭头函数

ES6 箭头函数:

'use strict';

var obj = {

  i: 10,

  b: () => console.log(this.i, this),

  c: function() {

    console.log( this.i, this)

  }

}

obj.b();  // 为什么 输出undefined, Window对象; 

obj.c() 则输出 : 10, obj ;

我之前把上面的代码理解为:


'use strict';

var obj = {

  i: 10,

  b: function() {

    return console.log( this.i, this)

  },

  c: function() {

    console.log( this.i, this)

  }

}

但是我发现, 执行obj.b();后输出10, obj;


所以箭头函数在这里的 this 还不甚了解, 望解答, 若优秀则必赞


慕姐4208626
浏览 402回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答