zoukankan      html  css  js  c++  java
  • ES6标准入门

    概念

    Babel是一个ES6转码器。

    原理

    Babel 的工作原理就是先将 ES6 源码转换为 AST,然后再将 ES6 语法的 AST 转换为 ES5 语法的 AST,最后利用 ES5 的 AST 生成 JavaScript 源代码。

    命令行转码

    npm install --global babel-cli
    babel 提供babel-cli工具 用于命令行转码

    用法:

    转码结果写入一个文件
    --out-file / -o
    babel a.js -o b.js

    整个目录转码
    --out-dir / -d
    babel src -d lib

    babel-node

    babel-cli工具自带一个babel-node命令 提供了一个支持ES6的REPL环境
    REPL:Read Eval Print Loop:交互式解释器 类似shell 可以用来调试js代码
    执行babel-node可以进入REPL环境 可以直接运行ES6代码

    babel-register

    babel-register模块改写了require命令 为其加上了一个钩子
    每当使用require加载后缀为.js .jsx .es .es6文件时 就会先用babel进行转码
    npm install --save-dev babel-register
    使用时必须先加载babel-register
    require('babel-register')
    require('./index.js')

    babel-core

    如果某些代码需要调用babel的API进行转码 则要使用babel-core模块
    npm install babel-core --save
    在项目中:
    let babel = require('babel-core')
    字符串转码:
    options为配置对象
    babel.transform('code();',options);
    文件转码:(同步/异步)
    babel.transformFile('filename.js',options,function(err,result){

    })
    babel.transformFileSync('filename.js',options)

    babel-polyfill

    polyfill:
    Polyfill 是一块代码(通常是 Web 上的 JavaScript),用来为旧浏览器提供它没有原生支持的较新的功能。

    babel默认只转换新的js句法,而不转换新的API。
    如果想让这个api运行 就必须使用babel-polyfill为当前环境提供一个垫片
    使用方法:
    npm install babel-polyfill --save
    脚本头部:
    import 'babel-polyfill' / require('babel-polyfill')

    笔记内容整理来自阮一峰老师的《ES6标准入门》

  • 相关阅读:
    Handler
    闹钟
    自动朗读 TTS
    语音转换成文本
    文件的存与读
    SurfaceView的绘图机制
    Chronometer
    拖动球
    如何整理一个被测对象的特性
    部门间沟通管理心得(持续不定期更新)
  • 原文地址:https://www.cnblogs.com/liyf-98/p/14416062.html
Copyright © 2011-2022 走看看