夜听城嚣 夜听城嚣
首页
  • 学习笔记

    • 《JavaScript高级程序设计》
    • 前端基建与架构
  • 专题分享

    • Git入门与开发
    • 前端面试题汇总
    • HTML和CSS知识点
  • 项目实践
  • 抓包工具
  • 知识管理
  • 工程部署
  • 团队规范
bug知多少
  • 少年歌行
  • 青年随笔
  • 文海泛舟
  • 此事躬行

    • 项目各工种是如何协作的
    • TBA课程学习
收藏

dwfrost

前端界的小学生
首页
  • 学习笔记

    • 《JavaScript高级程序设计》
    • 前端基建与架构
  • 专题分享

    • Git入门与开发
    • 前端面试题汇总
    • HTML和CSS知识点
  • 项目实践
  • 抓包工具
  • 知识管理
  • 工程部署
  • 团队规范
bug知多少
  • 少年歌行
  • 青年随笔
  • 文海泛舟
  • 此事躬行

    • 项目各工种是如何协作的
    • TBA课程学习
收藏
  • 导读
  • JS包管理工具和原理分析
  • yarn
  • CI环境上的npm优化
  • 对比主流构建工具
  • Vite实现原理
  • core-js和polyfill
  • 梳理babel
  • 前端基建与架构
frost
2022-06-13

梳理babel

Babel (opens new window)是JavaScript 编译器。它是一个工具链,主要用于将采用 ECMAScript 2015+ 语法编写的代码转换为向后兼容的 JavaScript 语法,以便能够运行在当前和旧版本的浏览器或其他环境中。

Babel的实现是基于编译原理,抽象成AST来生成目标代码。它在前端工程上起作用,对业务而言是无感知的。

Babel的作用:

  • 语法转换,一般是高级语言特性的降级
  • Polyfill特性的实现和接入
  • 源码转换,比如JSX等

Babel成员:

  • @babel/core:实现编译、转换的核心库
  • @babel/cli:提供的命令行工具
  • @babel/preset-env:一组babel插件和options配置的可共享模块
  • @babel/polyfill:包含regenerator runtime和core-js两个包
  • @babel/plugin-transform-runtime:通过重复使用babel注入的helper函数,减小代码体积。需要配合@babel/runtime使用
  • @babel/plugin:babel插件集合
  • @babel/template:将字符串模板转换为AST
  • ...

babel

#前端笔记
上次更新: 2022/06/13, 15:54:07
core-js和polyfill

← core-js和polyfill

最近更新
01
提交代码时修改commit消息
04-09
02
如何快速定位bug
02-20
03
云端web项目开发踩坑
08-25
更多文章>
Theme by Vdoing | Copyright © 2021-2025 dwfrost | 粤ICP备2021118995号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×