Jakie główne nowe funkcje były w każdej wersji JavaScript? Jaka wersja powinna być celem?

author
1 minute, 29 seconds Read

Więc zaczynałem nowy projekt TypeScript i zastanawiałem się, jaka wersja JavaScript / ECMA Script powinna być celem. Obecnie możemy wybierać spośród ES5, ES2015, ES2016, ES2017 i ES2018!

Dwie główne rzeczy do rozważenia przy wyborze docelowej wersji JavaScript to:

  • Środowisko docelowe – Przeglądarka stacjonarna? Mobilna? NodeJS?
  • Jakie funkcje JS są mi potrzebne – Klasy? Moduły? Async Functions?

Mamy szczęście być w wieku Evergreen Browser, więc wsparcie dla najnowszych funkcji jest bardzo dobre w większości środowisk, jednak zawsze są sytuacje, gdy użytkownicy mają starsze urządzenia, lub utknąłeś na starszej wersji NodeJS.

Z tego powodu, moim ogólnym zaleceniem jest celowanie w najstarszą wersję, która ma funkcje, których potrzebujesz. Zapewni to dobrą równowagę między szerokim wsparciem środowiska docelowego i dostępem do niesamowitych nowych funkcji 🙂

Poniżej podsumowałem to, co uważam za główne nowe funkcje wydane w każdej wersji ECMA Script. Aby uzyskać pełną listę, jak również pełne szczegóły dotyczące wsparcia środowiska docelowego, sprawdź niesamowitą tabelę kompatybilności Kangax’a.

ES5 (2009)

  • Jest to podstawowa wersja JS, którą można ogólnie założyć, że wszystkie run-times (z wyjątkiem naprawdę starych!) będą wspierać.

ES6 / ES2015

  • Standardowe moduły – import i export
  • Standardowe obietnice
  • Klasy & Dziedziczenie
  • Block-.scoped variables – leti const
  • Template Literals
  • Object destructing into variables
  • Generator functions
  • Map and Set data structures
  • Internationalisation for Strings, Numbers and Dates via Intl API

ES7 / ES2016

  • Array.includes()
  • Operator wykładników liczbowych (potęg) **

ES8 / ES2017

  • Funkcje asynchroniczne
  • Object.entries
  • Funkcje wyściełające łańcuch

ES9 / ES2018

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

.

Similar Posts

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.