zoukankan      html  css  js  c++  java
  • Babel与Polyfilll的关系和区别

    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,类似于上面的代码来实现的。

    以自己现在的努力程度,还没有资格和别人拼天赋
  • 相关阅读:
    关键词提取算法TextRank
    我的博文目录整理
    Windows Azure一些小技巧集合
    js数组和树互转
    this.props.form.validateFields回调不执行问题
    d3的4.x与3.x版本的区别
    d3提示框,虚线,选择区域
    d3布局
    d3文件导入和导出
    d3交互
  • 原文地址:https://www.cnblogs.com/zhenjianyu/p/15245211.html
Copyright © 2011-2022 走看看