javascript tip
  • Introduction
  • babel / polyfill
  • 變數常數資料類型
  • 流程控制、迴圈
  • 函式
  • 陣列
  • 物件
  • 原型
  • 事件
  • Promise
  • async/await
  • Fetch(簡易json傳輸)
  • 模組
  • 雜項
Powered by GitBook
On this page

Was this helpful?

babel / polyfill

PreviousIntroductionNext變數常數資料類型

Last updated 4 years ago

Was this helpful?

是一个广泛使用的 ES6 转码器,可以将 ES6 代码转为 ES5 代码,从而在老版本的浏览器执行。

Babel 的配置文件是.babelrc,存放在项目的根目录下。

下面的命令在项目目录中,安装 Babel。

$ npm install --save-dev @babel/core

Babel 也可以用于浏览器环境,使用模块提供的浏览器版本,将其插入网页。

<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
<script type="text/babel">
// Your ES6 code
</script>

注意,网页实时将 ES6 代码转为 ES5,对性能会有影响。生产环境需要加载已经转码完成的脚本。

Babel 默认只转换新的 JavaScript 句法(syntax),而不转换新的 API,比如Iterator、Generator、Set、Map、Proxy、Reflect、Symbol、Promise等全局对象,以及一些定义在全局对象上的方法(比如Object.assign)都不会转码。但可透過安裝使用 babel-plugin-transform-runtime,來實現。

Polyfill是抹平新老瀏覽器 標準原生API 之間的差距的一種封裝。

Babel
@babel/standalone