Babel
:是一个广泛使用的 ES6 转码器
,可以将 ES6 代码
转为 ES5 代码
。
注意:Babel 默认只转换新的 JavaScript 句法(syntax)
,而不转换新的 API
。
Polyfill
:用于实现浏览器并不支持的原生API的代码
。
案例
转换前
(x => x * 2)(1);
var b = Array.of(1,2,4);
使用babel转码后
'use strict';
(function (x) {
return x * 2;
})(1);
var b = Array.of(1, 2, 4);
这个例子中,Babel
转换了ES6
的箭头函数
句法,但对于Array.of
并没有转换,因为Array.of
是ES6的API
。
Array
是ES5
就存在的一个对象了,但是该对象没有of
方法,这个方法就是一个API
,但ES6
有这个API
了。对于不支持ES6
的浏览器,我们通过引入babel-polyfill
使其支持ES6的API
网友评论