Nothing Special   »   [go: up one dir, main page]

Przejdź do zawartości

Babel (transpilator)

Z Wikipedii, wolnej encyklopedii
Babel.js
Logo Babel.js
Logo programu
Autor Sebastian McKenzie
Pierwsze wydanie 2014[1]
Aktualna wersja stabilna 7.26.2
(30 października 2024) [±]
Język programowania JavaScript
System operacyjny Wieloplatformowe
Rodzaj transpilator
Licencja MIT[2]
Strona internetowa

Babeldarmowy i otwarty transpilator JavaScript, którego głównym celem jest konwersja ECMAScript 2015+ (ES6+) na kod zgodny z ES5, czyli ze starszymi przeglądarkami internetowymi. Tym samym Babel jest narzędziem umożliwiającym korzystanie z najnowszych funkcji języka JavaScript, zanim zostaną one wszędzie zaimplementowane)[3][4].

Wtyczki do Babel służą do przekształcania składni, która nie jest powszechnie obsługiwana, w wersje kompatybilne wstecz. Na przykład arrow functions wyspecyfikowane w ES6 są konwertowane na zwykłe deklaracje funkcji[5]. Można także przekształcić zupełnie niestandardową składnię taką jak JSX na JavaScript[6].

Babel udostępnia również polyfille, aby zapewnić obsługę funkcji, których całkowicie brakuje w danym środowisku JavaScript. Na przykład metody statyczne, takie jak Array.from, czy całe klasy, takie jak Promise, są dostępne tylko w ES6+. Ale dzięki Babel można ich używać i nadal wspierać stare przeglądarki[7].

Zobacz też

[edytuj | edytuj kod]

Przypisy

[edytuj | edytuj kod]
  1. first commit [online], Babel.js Github [dostęp 2021-01-26].
  2. LICENSE [online], Babel – GitHub [dostęp 2020-01-01].
  3. Gastón Silva, ES6 bez tajemnic. Korzystanie z ES6 z pomocą narzędzi Babel i Broccoli, Joanna Liana, Shebang.pl, 15 grudnia 2015 [dostęp 2020-01-01] (pol.).
  4. Transpilacja kodu ECMAScript 6 za pomocą Babel JS i Browserify [online], ProPHP, 15 listopada 2015 [dostęp 2020-01-01].
  5. Plugins · Babel [online], babeljs.io [dostęp 2020-01-01] (ang.).
  6. Introducing JSX [online], reactjs.org [dostęp 2020-01-01] (ang.).
  7. @babel/polyfill [online], babeljs.io [dostęp 2020-01-01] (ang.).

Linki zewnętrzne

[edytuj | edytuj kod]