2
{birth: 2000}
が接続されているためbirth
属性は、変更されませんなぜ私はここにJavaScriptの呼び出し機能に関する質問はありますか?
var obj = {
birth: 1990,
getAge: function (year) {
var b = this.birth; // 1990
var fn = (y) => y - this.birth; // this.birth is still 1990
return fn.call({birth:2000}, year);
}
};
obj.getAge(2015); // 25
をスニペットを読ん
矢印機能です。矢印関数の 'this'は、常に' this'をその外側で参照します。 –
var fn =(y)=> y - this.birth; // this.birthはまだ1990年です return fn.call({birth:2000}、年);なぜ???? –