Übergabe als Referenz vs. Übergabe als Wert in JavaScript
In JavaScript stellt sich die Frage, ob Variablen als Referenz oder als Wert übergeben werden war Gegenstand von Verwirrung. Zur Verdeutlichung: Primitive Datentypen wie Zahlen und Zeichenfolgen werden als Wert übergeben, was bedeutet, dass eine Kopie des Originalwerts erstellt wird. Alle an dieser Kopie vorgenommenen Änderungen wirken sich nicht auf die Originalvariable aus.
Objekte und Arrays, bei denen es sich um komplexe Datentypen handelt, werden jedoch als „Kopie einer Referenz“ übergeben. Das bedeutet, dass bei der Übergabe eines Objekts oder Arrays an eine Funktion eine Referenz auf dieses Objekt oder Array erstellt wird und alle an der Referenz vorgenommenen Änderungen weiterhin Auswirkungen auf das ursprüngliche Objekt oder Array haben.
Die my Parameter in der Rechteckfunktion
Im bereitgestellten Beispiel ist der my-Parameter in der Rechteckfunktion eine Veranschaulichung dieses Konzepts. Innerhalb der Funktion werden die Eigenschaften my.l und my.w geändert, was sich auf das ursprüngliche Objekt auswirkt. Wenn der my-Parameter entfernt würde, hätte die Flächenfunktion innerhalb der Rechteckfunktion keinen Zugriff auf diese Eigenschaften.
Abschluss vs. direkte Änderung
Das ist wichtig zu beachten Dieses Verhalten entspricht nicht einem Abschluss, bei dem eine Funktion eine Funktion mit Zugriff auf die lokalen Variablen der übergeordneten Funktion zurückgibt. Stattdessen ist es das Ergebnis des „Kopieren einer Referenz“-Verhaltens für Objekte, wodurch Änderungen an der Referenz Auswirkungen auf das Originalobjekt haben können.
Das obige ist der detaillierte Inhalt vonReferenz- oder Wertübergabe in JavaScript: Wie funktioniert es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!