Unterschied zwischen diesem und dem Selbst in JavaScript
Jeder ist sich dessen bewusst this
in javascript, aber es gibt auch Fälle von self
begegnet in der wildnis, wie hier
Also, was ist der Unterschied zwischen this
und self
in JavaScript?
Kommentar zu dem Problem
Und über...
@dystroy: Es ist einer:
Fenster.self
(=== window
). Wenn die OP meint wahrscheinlich eine triviale variable name... @dystroy: ich glaube nicht, er könnte wirklich meinen es, aber in der Tat im globalen Gültigkeitsbereich (und ein browser-Umgebung)
= = = self
wahr ist 🙂 Subjektive beiseite: aliasing
this
zu self
ist nicht eine große Praxis heute, wenn es gängige code mit vielen (na ja, mehr als einer ist schon schlimm genug) Ebenen der callback-Schachteln, die als Folge der asynchronen Programmierung. Verwenden Sie einen aussagekräftigeren Namen statt. Objektiv betrachtet den Namen this
selbst trägt keine information und ist nur ein nonbad Wahl des namens, weil der lexikalische Kontext der definition einer Klasse qualifiziert. dies ist eine gültige und nützliche Frage, soll es wieder geöffnet werden
InformationsquelleAutor der Frage noname | 2013-06-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es sei denn, es anderswo, den Wert von
self
istwindow
weil JavaScript ermöglicht den Zugriff auf jede Eigenschaftx
vonwindow
als einfachx
stattwindow.x
. Daherself
ist wirklichFenster.self
, anders zuthis
.Wenn Sie eine Funktion, die ausgeführt wird, im globalen Bereich und nicht im strikten Modus
this
standardmäßigwindow
, und daherWenn Sie mit einer Funktion in einem anderen Kontext,
this
beziehen sich auf diesen Kontext, aberself
nochwindow
.Finden Sie
window.self
definiert in der W3C 2006 working draft für die Window-Objekt hier.InformationsquelleAutor der Antwort Paul S.
Ich bin zwar spät hier aber stieß ich auf ein Beispiel, das kann auch hilfreich sein, zu verstehen
this
weiter:O/P
InformationsquelleAutor der Antwort Shashank Vivek