Babel (transcompiler)
Babel is a free and open-source JavaScript transcompiler 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]
Original author(s) | Sebastian McKenzie |
---|---|
Developer(s) | Contributors |
Stable release | 7.8.6
/ February 27, 2020[1] |
Repository | |
Written in | JavaScript |
Operating system | Linux, macOS, Solaris, FreeBSD, OpenBSD, AIX, Microsoft Windows |
Type | Compiler |
License | MIT[2] |
Website | babeljs |
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 was downloaded 5 million times a month as of 2016, increasing to 16 million times per week as of 2019.[5][6]
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.[7] Non-standard JavaScript syntax such as JSX can also be transformed.[8][9]
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.[10]
See also
- Comparison of web browsers
- TypeScript
- Web development tools
- Webpack JavaScript bundler
References
- "Babel.js Latest Release". Retrieved 29 February 2020.
- "babel/LICENSE at master". GitHub. Retrieved 12 May 2018.
- "Technology Radar | Emerging Technology Trends for 2017 | ThoughtWorks". www.thoughtworks.com. Retrieved 2018-05-12.
- "Why Babel Matters | codemix". codemix.com. Retrieved 2018-05-12.
- "The State of Babel · Babel". babeljs.io. Retrieved 2018-05-12.
- "Babel's Funding Plans · Babel". babeljs.io. Retrieved 2020-08-01.
- "Plugins · Babel". babeljs.io. Retrieved 5 July 2019.
- "Introducing JSX - React". reactjs.org. Retrieved 2018-05-12.
- "Using React and building a web site on Azure". Microsoft Faculty Connection. Retrieved 2018-05-12.
- "@babel/polyfill". babeljs.io. Retrieved 5 July 2019.