Hinweis, Verwandte Value of this inside object method?Function.prototype.call nicht setzen Sie diese nicht bei Pfeil Funktion
Gegeben
var obj = {
property: 5,
func1: function() {
console.log(this.property);
},
func2:() => {
console.log(this.property);
}
}
this
Window
bei obj.func2()
wäre.
versucht Wenn this
zu obj
Function.prototype.call()
mit Einstellung war this
noch Window
var obj = {
property: 5,
func1: function() {
console.log(this.property);
},
func2:() => {
console.log(this.property);
}
}
obj.func2.call(obj);
Ist das erwartete Verhalten?
Warum
Function.prototype.call()
nicht gesetzt diecontext
vonobj.func2
-obj
?
'this' für Pfeil Funktionen aus dem äußeren Kontext erfasst, so dass es ein erwartetes Verhalten ist. – zerkms
@zerkms 'Function.prototype.call',' Function.prototype.apply' kann 'context' nicht einstellen:' this' von Pfeilfunktionen? – guest271314
Nein, http://www.ecma-international.org/ecma-262/6.0/#sec-arrow-funktions-definitions-runtime-semantics-evaluation – zerkms