Babel:Babel 是一个广泛使用的 ES6 转码器,可以将 ES6 代码转为 ES5 代码。
注意:Babel 默认只转换新的 JavaScript 句法(Syntax),而不转换新的 API。
polyfill:polyfill的准确意思为,用于实现浏览器并不支持的原生API的代码。
1 //使用babel转码前的代码 2 require('babel-polyfill'); 3 (x => x * 2)(1); 4 var b = Array.of(1,2,4); 5 //使用babel转码后的代码 6 'use strict'; 7 8 require('babel-polyfill'); 9 (function (x) { 10 return x * 2; 11 })(1); 12 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,类似于上面的代码来实现的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。