Welche wichtigen neuen Funktionen sind in jeder JavaScript-Version enthalten? Welche Version sollte ich anvisieren?

author
1 minute, 27 seconds Read

Ich habe also ein neues TypeScript-Projekt begonnen und frage mich, welche JavaScript- / ECMA-Script-Version ich anvisieren soll. Wir können derzeit zwischen ES5, ES2015, ES2016, ES2017 und ES2018 wählen!

Die beiden wichtigsten Dinge, die bei der Auswahl der JavaScript-Zielversion zu beachten sind:

  • Zielumgebung – Desktop-Browser? Mobile? NodeJS?
  • Welche JS-Funktionen benötige ich – Klassen? Module? Async-Funktionen?

Wir haben das Glück, im Zeitalter des Evergreen-Browsers zu leben, so dass die Unterstützung für die neuesten Funktionen in den meisten Umgebungen sehr gut ist. Es gibt jedoch immer wieder Situationen, in denen Benutzer ältere Geräte haben oder Sie auf einer älteren Version von NodeJS festsitzen.

Aus diesem Grund ist meine allgemeine Empfehlung, die älteste Version anzustreben, die die von Ihnen benötigten Funktionen hat. Dies bietet ein gutes Gleichgewicht zwischen einer breiten Unterstützung der Zielumgebung und dem Zugang zu fantastischen neuen Funktionen 🙂

Im Folgenden habe ich die meiner Meinung nach wichtigsten neuen Funktionen zusammengefasst, die in jeder ECMA Script-Version veröffentlicht wurden. Eine umfassende Liste sowie alle Details zur Unterstützung der Zielumgebungen finden Sie in der großartigen Kompatibilitätstabelle von Kangax.

ES5 (2009)

  • Dies ist die Basisversion von JS, von der Sie im Allgemeinen annehmen können, dass alle Laufzeiten (außer wirklich alten!) sie unterstützen.

ES6 / ES2015

  • Standardmodule – import und export
  • Standardisierte Promises
  • Klassen &Vererbung
  • Block-.scoped variables – letund const
  • Template Literals
  • Object destructing into variables
  • Generator functions
  • Map and Set data structures
  • Internationalisation for Strings, Zahlen und Daten über Intl API

ES7 / ES2016

  • Array.includes()
  • Numerischer Exponent (Potenz von) Operator **

ES8 / ES2017

  • Async Funktionen
  • Object.entries
  • String padding functions

ES9 / ES2018

  • Object Rest/Spread const obj = { ...props };
  • Asynchronous Iteration for await (...) {
  • Promise finally() function
  • Regular expression enhancements (lookbehind, named groups)

Similar Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.