Heim  >  Artikel  >  Web-Frontend  >  Können Pfeilfunktionen in ES6 ihr eigenes Argumentobjekt erstellen?

Können Pfeilfunktionen in ES6 ihr eigenes Argumentobjekt erstellen?

Susan Sarandon
Susan SarandonOriginal
2024-10-18 15:54:03496Durchsuche

Can Arrow Functions Create Their Own Arguments Object in ES6?

ES6-Pfeilfunktionen: Klarstellung zur Verwendung von Argumenten

Bezüglich der Verwendung von Argumenten in ES6-Pfeilfunktionen ist aufgrund widersprüchlicher Implementierungen Verwirrung entstanden Hauptbrowser und Babel. Dieser Artikel soll die offizielle Haltung zu diesem Thema klären.

Die Verhaltensanomalie

In Pfeilfunktionen sollten Argumente ihren Wert vom übergeordneten Bereich erben. Allerdings verstoßen Browser wie Chrome, Firefox und Node gegen dieses Prinzip und ermöglichen Pfeilfunktionen, ihr eigenes Argumentobjekt zu erstellen.

Offizielle Dokumentation

Die offizielle ECMA-262-Spezifikation (ES6) besagt ausdrücklich, dass „angegebene Anweisungen und Pfeilfunktionen keine eigene Argumentbindung in ihrem Gültigkeitsbereich haben; beim Aufruf wird kein Argumentobjekt erstellt.“ Dies bedeutet, dass sich Pfeilfunktionen ausschließlich auf den übergeordneten Bereich verlassen sollten, um auf Argumente zuzugreifen.

Browser-Implementierungen

Trotz der offiziellen Spezifikation haben sich Chrome, Firefox und Node dafür entschieden Missachten Sie diese Regel, während Babel sich daran hält. Dies führt zu folgender Diskrepanz:

  • Browser: Argumente sind in Pfeilfunktionen verfügbar und stammen aus ihrem eigenen Bereich.
  • Babel: Argumente sind in Pfeilfunktionen nicht verfügbar, was zu einem „ „Argumente sind nicht definiert“-Fehler.

Korrekte Verwendung

Um Verwirrung zu vermeiden und die Kompatibilität zwischen verschiedenen Umgebungen sicherzustellen, ist es wichtig, die offizielle Spezifikation zu befolgen. Pfeilfunktionen sollten kein eigenes Argumentobjekt haben und alle darin enthaltenen Verweise auf Argumente sollten sich auf den übergeordneten Bereich beziehen.

Das obige ist der detaillierte Inhalt vonKönnen Pfeilfunktionen in ES6 ihr eigenes Argumentobjekt erstellen?. 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