これは無意味なことだと思いますが、なぜうまくいかないのかわかりません。
var person = {
_name: "Steve",
doSomething: () => console.debug("Doing stuff with ", this._name)
}
「this」はグローバル オブジェクトにバインドされており、getName が呼び出されたオブジェクトにはバインドされていません。上記は次と同等であると予想していました:
var person = {
_name: "Steve",
doSomething: function() { console.debug("Doing stuff with ", this._name) }
}
(こんな風に書けばいいのに)
var person = {
_name: "Steve",
doSomething() {
console.debug("Doing stuff with ", this._name)
}
}