Babel.js |
| Original author(s) | Sebastian McKenzie |
|---|
| Developer(s) | contributors |
|---|
|
| Stable release | 7.6.1
/ September 6, 2019; 4 years ago (2019-09-06)[1] |
|---|
|
|
| Written in | JavaScript |
|---|
| Operating system | Linux, macOS, Solaris, FreeBSD, OpenBSD, AIX, Microsoft Windows |
|---|
| Type | compiler |
|---|
| License | MIT[2] |
|---|
| Website | babeljs.io |
|---|
Babel is a free and open-source JavaScript transpiler that is mainly used to convert ECMAScript 2015+ (ES6+) code into a backwards compatible version of JavaScript that can be run by older JavaScript engines. Babel is a popular tool for using the newest features of the JavaScript programming language.[3]
Developers can use new JavaScript language features by using Babel to convert their source code into versions of JavaScript that evolving browsers are able to process.[4] The core version of Babel is downloaded 5 million times a month as of 2016.[5]
Babel plugins are used to transform syntax that is not widely supported into a backwards-compatible version. For example, arrow functions, which are specified in ES6, are converted into regular function declarations.[6] Non-standard JavaScript syntax such as JSX can also be transformed.[7][8]
Babel provides polyfills to provide support for features that are missing entirely from JavaScript environments. For example, static methods like Array.from and built-ins like Promise are only available in ES6+, but they can be used in older environments if a Babel polyfill is used.[9]
See also
- Comparison of web browsers
- TypeScript
- Web development tools
- Webpack JavaScript bundler
References
- ↑ "Babel.js Latest Release". https://github.com/babel/babel/releases/latest. Retrieved 11 September 2019.
- ↑ "babel/LICENSE at master". https://github.com/babel/babel/blob/master/LICENSE. Retrieved 12 May 2018.
- ↑ "Technology Radar | Emerging Technology Trends for 2017 | ThoughtWorks". https://www.thoughtworks.com/radar/tools/babel.
- ↑ "Why Babel Matters | codemix". https://codemix.com/blog/why-babel-matters/.
- ↑ "The State of Babel · Babel". https://babeljs.io/blog/2016/12/07/the-state-of-babel.
- ↑ "Plugins · Babel". https://babeljs.io/docs/en/plugins. Retrieved 5 July 2019.
- ↑ "Introducing JSX - React". https://reactjs.org/docs/introducing-jsx.html.
- ↑ "Using React and building a web site on Azure". Microsoft Faculty Connection. https://blogs.msdn.microsoft.com/uk_faculty_connection/2017/07/21/using-react-and-building-a-web-site-on-azure/.
- ↑ "@babel/polyfill". https://babeljs.io/docs/en/babel-polyfill. Retrieved 5 July 2019.
External links
- GitHub project
- origin story
JavaScript |
|---|
| Code analysis | |
|---|
| Transcompilers |
- Babel.js
- CoffeeScript
- LiveScript
- Dart
- Emscripten
- Google Closure Compiler
- Google Web Toolkit
- Morfik
- TypeScript
- AtScript
- Opa
- Nim
- Haxe
- ClojureScript
- WebSharper
- PureScript
- Reason
- Elm
|
|---|
| Concepts |
- Client-side
- JavaScript library
- JavaScript syntax
- Unobtrusive JavaScript
|
|---|
| Debuggers |
- Firebug
- Komodo IDE
- Microsoft Script Debugger
- Microsoft Script Editor
- Opera Dragonfly
- Web Inspector
|
|---|
| Doc generators | |
|---|
| Editors (comparison) |
- Ace
- Atom
- CodeMirror
- Koding
- PhpStorm
- Orion
- Visual Studio
- Visual Studio Code
- Visual Studio Team Services
|
|---|
| Engines |
- Comparison of engines
- List of ECMAScript engines
|
|---|
| Frameworks |
- Comparison of JavaScript frameworks
- List of JavaScript libraries
|
|---|
| Related technologies |
- Cascading Style Sheets
- Document Object Model
- HTML
- Dynamic HTML
- Ajax
- JSON
- WebAssembly
- asm.js
|
|---|
| Package managers | |
|---|
| Application Bundlers | |
|---|
| Server-side |
- Active Server Pages
- CommonJS
- JSGI
- Node.js
- Wakanda
|
|---|
| Unit testing |
- Jasmine
- Mocha
- QUnit
- List of JavaScript unit testing frameworks
- Jest
|
|---|
| People |
- Douglas Crockford
- Brendan Eich
- John Resig
|
|---|