Babel – это транспилер для JavaScript, который преобразует современный код (ES6+ и JSX) в старый, совместимый с более старыми браузерами.
Некоторые браузеры (например, Internet Explorer) не поддерживают новые фичи JavaScript. Babel переводит код на более старый стандарт, чтобы он работал везде.
Позволяет использовать новые возможности JavaScript, даже если браузер их пока не поддерживает.
Babel преобразует JSX (используется в React) в обычный JavaScript.
Можно использовать нестандартные предложения для JavaScript, такие как плагины для новых фич.
Babel делает три шага:
Парсинг – разбор кода в абстрактное синтаксическое дерево (AST).
Трансформация – изменение AST (например, замена const
на var
).
Генерация – создание нового кода из изменённого AST.
Современный JavaScript (ES6+)
const greet = (name) => `Hello, ${name}!`;
console.log(greet("Alice"));
После транспиляции Babel (ES5)
"use strict";
function greet(name) {
return "Hello, " + name + "!";
}
console.log(greet("Alice"));
npm install --save-dev @babel/core @babel/cli @babel/preset-env
.babelrc
) {
"presets": ["@babel/preset-env"]
}
script.js
) npx babel script.js --out-file script.compiled.js
Ставь 👍 и забирай 📚 Базу знаний