Unerwünscht
Dieses Feature wurde aus den Webstandards entfernt. Obwohl manche Browser es immer noch unterstützen, wird es zukünftig wegfallen. Es sollte daher nicht mehr in alten oder neuen Projekten verwendet werden. Webseiten oder Webapps, die es benutzen, funktionieren möglicherweise irgendwann nicht mehr korrekt.
Die function.arguments
Eigenschaft referenziert ein Array ähnliches Objekt, welches die übergebenen Parameter einer Funktion enthält. Stattdessen kann die Variable arguments
benutzt werden. Diese Eigenschaft ist im Strict Mode aufgrund von taill Aufrufoptimierung verboten.
Beschreibung
Die Syntax function.arguments
ist veraltet. Der empfolene Weg, um das arguments
Objekt zu erreichen, ist in einer Funktion die Variable arguments
zu benutzen.
Im Fall von Rekursion, z. B. wenn die Funktion f
mehrere Male auf dem Aufruf-Stack ist, repräsentiert f.arguments
die Argumente des letzten Aufrufes der Funktion.
Der Wert der arguments
Eigenschaft ist normalerweise null
, wenn keine Durchführung der Funktion vorhanden ist (Durchführung bedeutet, dass die Funktion aufgerufen wurde, aber noch nichts zurückgegeben hat).
Beispiele
function f(n) { g(n - 1); } function g(n) { console.log('before: ' + g.arguments[0]); if (n > 0) { f(n); } console.log('after: ' + g.arguments[0]); } f(2); console.log('returned: ' + g.arguments); // Output // before: 1 // before: 0 // after: 0 // after: 1 // returned: null
Spezifikationen
Spezifikation | Status | Kommentar |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Initiale Definition. Implementiert in JavaScript 1.0. Deprecated zugunsten von arguments in ES3. |
ECMAScript 5.1 (ECMA-262) Die Definition von 'arguments object' in dieser Spezifikation. |
Standard | arguments Objekt |
ECMAScript 2015 (6th Edition, ECMA-262) Die Definition von 'arguments object' in dieser Spezifikation. |
Standard | arguments Objekt |
ECMAScript Latest Draft (ECMA-262) Die Definition von 'arguments object' in dieser Spezifikation. |
Entwurf | arguments Objekt |
Browserkompatibilität
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
arguments | Chrome Vollständige Unterstützung 1 | Edge Vollständige Unterstützung 12 | Firefox Vollständige Unterstützung 1 | IE Vollständige Unterstützung 4 | Opera Vollständige Unterstützung Ja | Safari Vollständige Unterstützung Ja | WebView Android Vollständige Unterstützung 1 | Chrome Android Vollständige Unterstützung 18 | Firefox Android Vollständige Unterstützung 4 | Opera Android Vollständige Unterstützung Ja | Safari iOS Vollständige Unterstützung Ja | Samsung Internet Android Vollständige Unterstützung 1.0 | nodejs Vollständige Unterstützung Ja |
Legende
- Vollständige Unterstützung
- Vollständige Unterstützung
- Veraltet. Nicht für den Einsatz in neuen Webseiten gedacht.
- Veraltet. Nicht für den Einsatz in neuen Webseiten gedacht.