Heim  >  Artikel  >  Web-Frontend  >  Wann ist das Argumentobjekt in ES6-Pfeilfunktionen verfügbar?

Wann ist das Argumentobjekt in ES6-Pfeilfunktionen verfügbar?

Susan Sarandon
Susan SarandonOriginal
2024-10-18 15:58:02502Durchsuche

When is the Arguments Object Available in ES6 Arrow Functions?

Argumente-Objekt in ES6-Pfeilfunktionen: Offizielle Dokumentation

Pfeilfunktionen haben mit ihrer prägnanten Syntax schnell die Aufmerksamkeit der Entwickler auf sich gezogen. Ein Aspekt, der jedoch Fragen aufgeworfen hat, ist die Verfügbarkeit des darin enthaltenen Argumentobjekts.

Laut der offiziellen Dokumentation von TC39, dem Dachverband für JavaScript-Standardisierung, Pfeilfunktionen erstellen keine eigenen Argumente Objekt. Im Gegensatz zu regulären Funktionen erben Pfeilfunktionen das Argumentobjekt von ihrem übergeordneten Bereich.

Dieses Verhalten wird im folgenden Beispiel deutlich, in dem eine Pfeilfunktion mit drei Argumenten aufgerufen wird:

<code class="js">(() => console.log(arguments))(1, 2, 3);</code>

In Umgebungen Wie bei Chrome, Firefox und Node.js protokolliert dieser Code „1,2,3“. Babel und andere Bundler geben jedoch einen Fehler aus, der darauf hinweist, dass Argumente nicht definiert sind.

Diese Diskrepanz entsteht, weil einige Umgebungen Pfeilfunktionen den Zugriff auf das Argumentobjekt ihres übergeordneten Bereichs ermöglichen, während andere die strenge Interpretation von ES6 implementieren Spezifikation, die verbietet, dass Pfeilfunktionen über ein eigenes Argumentobjekt verfügen.

Zusammenfassend heißt es in der offiziellen Dokumentation von TC39 (ES6-Spezifikation) eindeutig, dass Pfeilfunktionen kein eigenes Argumentobjekt besitzen. Das beobachtete Verhalten in bestimmten Umgebungen, in denen Pfeilfunktionen auf die Argumente des übergeordneten Bereichs zugreifen können, ist nicht standardmäßig und kann zu unerwarteten Ergebnissen führen.

Das obige ist der detaillierte Inhalt vonWann ist das Argumentobjekt in ES6-Pfeilfunktionen verfügbar?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn