在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ 箭頭函數(shù)定義對象方法時的this取值為何不是對象本身?

箭頭函數(shù)定義對象方法時的this取值為何不是對象本身?

function Person() {
    this.name = 'ie'
};
Person.prototype.sayName = () => {
        console.log(this.name);
}

編譯結(jié)果

var _this = this;
function Person() {
    this.name = 'ie';
}
;
Person.prototype.sayName = function () {
    console.log(_this.name);
};
回答
編輯回答
空白格

因為箭頭函數(shù)本身沒有this,它是根據(jù)當(dāng)前的作用域鏈向上查找this的指向,你的題目當(dāng)前this的指向是Window對象,所以才會出現(xiàn)最后的編譯結(jié)果

2017年11月4日 17:08
編輯回答
維他命

沒有為什么,規(guī)范就是這樣規(guī)定的 箭頭函數(shù)體內(nèi)的this對象,就是定義時所在的對象,而不是使用時所在的對象。

2017年3月14日 00:09