Heim  >  Artikel  >  Web-Frontend  >  Was sind die Unterschiede zwischen es6 und es5?

Was sind die Unterschiede zwischen es6 und es5?

青灯夜游
青灯夜游Original
2021-09-03 14:57:2424085Durchsuche

Unterschiede: 1. ES6 hat eine neue Pfeilfunktion, ES5 nicht; 2. ES6 hat einen neuen Bereich auf Blockebene, ES5 nicht; 3. ES6 führt das Konzept der Klasse ein und verwendet nicht mehr die Prototypkette zur Implementierung Vererbung wie ES5. , Standardfunktionsparameter können in ES6 festgelegt werden, jedoch nicht in ES5. Die Versprechensfunktion wurde in ES6 hinzugefügt.

Was sind die Unterschiede zwischen es6 und es5?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript 5- und ECMAScript 6-Version, Dell G3-Computer.

Im Vergleich zu ES5 hat ES6 viele neue Dinge hinzugefügt, wie zum Beispiel:

1. Neue Pfeilfunktion

Die durch die Pfeilfunktion gelösten Probleme

  • vereinfachen das Schreiben. Pfeilfunktionen eignen sich, wenn der Funktionskörper nur aus einer Zeile besteht. Wenn mehrere Zeilen vorhanden sind, können zur Verbesserung der Lesbarkeit normale Funktionen verwendet werden. Weniger Codierung, klare Struktur

  • Machen Sie dies klar. Das This von traditionellem JS wird zur Laufzeit und nicht bei der Definition bestimmt, während das This von Pfeilfunktionen bei der Definition bestimmt wird und nicht geändert werden kann, noch kann es durch Methoden wie Call, Apply und Bind geändert werden. H Sely, beim Laufen ist es auf die Zeit gerichtet, und Sie müssen diesen Punkt nicht beurteilen : Die Pfeilfunktion hat kein eigenes Dies ist das Dies in der äußeren Schicht. und das This who ist eine Funktion, die keine Pfeilfunktion ist. Aufgrund des Mechanismus von js weist es auf den Umfang einer Funktion hin, die keine Pfeilfunktion ist. „Der Unterschied zwischen Pfeilfunktionen und gewöhnlichen Funktionen“ Es gibt kein

    dieses

  • , das Objekt this im Funktionskörper ist das Objekt, in dem es definiert ist, und nicht das Objekt, in dem es verwendet wird. Die Pfeilfunktion verfügt nicht über ein
Argumente-Objekt. Dieses Objekt verfügt nicht Wenn Sie ihn verwenden möchten, können Sie den Rest-Parameter verwenden.

Die Pfeilfunktion kann nicht als Konstruktor verwendet werden, kann nicht neu sein und hat keine Eigenschaft ​​Methoden haben nur Parameter und keinen Gültigkeitsbereich.

  • kann den Yield-Befehl nicht verwenden. Daher kann die Pfeilfunktion die Generatorfunktion nicht ausführen Der Befehl in ES6 ist ähnlich wie bei var, aber let fügt JavaScript einen neuen Bereich auf Blockebene hinzu used muss deklariert werden; const deklariert Konstanten

    strukturelle Zuweisung von Variablen in ES6, wie zum Beispiel: var [a,b ,c] = [0,1,2];
  • 3

  • ES6 verwendet nicht mehr die Prototypenkette zur Implementierung der Vererbung wie ES5, sondern führt das Konzept der Klasse ein, das ähnlich wie Java klingt. Die Syntax der objektorientierten Programmierung ist etwas ähnlich, aber die beiden sind unterschiedlich.
  • 4. Standardfunktionsparameter festlegen

  • In ES6 können Sie Standardfunktionsparameter festlegen, z. B. Funktion A (x, y=9) {};

  • 5. Versprechen
  • Versprechen Generationshintergrund: Lösen Sie das Problem der Rückrufhölle und verarbeiten Sie asynchrone Anforderungen. Verwendung des Versprechens: Kettenaufruf, Erfolgs- und Fehlerrückrufe, drei Zustände, ausgelöst, wenn sich der ausstehende Zustand ändert. Sobald sich der Status ändert, wird er sich nicht erneut ändern.

  • 6. Vorlagenzeichenfolge

7. Aufgabenstruktur [Empfohlenes Lernen:

Javascript-Tutorial für Fortgeschrittene
    ]

Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen es6 und es5?. 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