Задать вопрос
Ivan-P
@Ivan-P

Какая разница между es2015 и stage-0?

Насколько я понял "stage-0" это самая расширенная версия включающае все-все плагины Бабеля включая и те что есть в "es2015".
Почему тогда "es2015" трансформирует функцию
let z = (x) => x+1;
в
var z = function z(x) {
  return x + 1;
};

а "stage-0" в
let z = x => x + 1;
?
  • Вопрос задан
  • 8917 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 2
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Это не «версия».

Каждая фича, которую предлагается включить в ES, проходит несколько стадий, от 0 до 4. 0 — голое описание фичи в текстовом виде, 4 — фича имеет хорошие шансы попасть в следующий релиз, 3 — аналогично, но шансы поменьше. Таким образом, включая stage-0, можно использовать очень экспериментальные фичи. Есть вероятность, что они не войдут в стандарт вообще или заметно изменятся. В проекте, рассчитаном на долгую поддержку, я бы не стал их использовать, если только вы не активный участник TC39 или контрибютор babeljs.
Ответ написан
Комментировать
@Aves
ES2015, или ES6 - это текущий стандарт, stage относится к черновику будущего ES2017, stage-0 самая дальняя от принятия стадия - https://tc39.github.io/process-document/

Пресет stage в babel конвертирует в текущий ES2105/ES6 из ещё даже не принятого в черновик синтаксиса, пресет es2015 - в прошлый ES5
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
Geba
@Geba
Full Stack Web Developer focused on GIS
stage-0 не заменяет es2015 ) Вот сравни кол-во плагинов
https://babeljs.io/docs/plugins/preset-stage-0/
babeljs.io/docs/plugins/preset-es2015
Ответ написан
Комментировать
@yernende
Насколько я понял "stage-0" это самая расширенная версия включающае все-все плагины Бабеля включая и те что есть в "es2015".

Нет.
Stage-0 реализует поддержку всех пропосалов и компилирует их в ES2015.
Компиляцию ES2015 в ES5 надо подключать отдельно.
Ответ написан
Комментировать
@MrCheater
Full-Stack JS. В прошлом программист-олимпиадник
es2015 и stage-0 это просто набор плагинов для babel
https://babeljs.io/docs/plugins/preset-stage-0/
https://babeljs.io/docs/plugins/preset-es2015
их можно и отдельно руками прописать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы