Rolf B: Rückspeichern in Argument

Beitrag lesen

Hallo effel,

JavaScript übergibt Argumente grundsätzlich als Wert. Referenzparameter gibt es nicht.

Was verwirren kann, ist die Frage, was denn der Wert ist.

Bei undefined, null, Zahlen und Booleans ist es der primitive Wert, an dem du nichts ändern kannst.

Ein String wird als Verweis auf das interne String-Objekt übergeben. Das ist aber unveränderlich, deswegen kannst du es als primitiven Wert ansehen.

Alles andere sind Objekte und du bekommst einen Verweis auf das Objekt. Das heißt: du kannst den Inhalt des Objekts ändern, so weit es das zulässt, aber du kannst dem Aufrufer kein anderes Objekt unterschieben.

Dafür bräuchte es echte Referenzparameter, wie bspw. in PHP durch das & Zeichen.

Rolf

--
sumpsi - posui - obstruxi