首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
AST
订阅
杨飞19881024
更多收藏集
微信扫码分享
微信
新浪微博
QQ
29篇文章 · 1订阅
前端也要懂编译:AST 从入门到上手指南
阅读文章之前,不妨打开手头项目中的 package.json ,我们会发现众多工具已经占据了我们开发日常的各个角落,例如 JavaScript 转译、CSS 预处理、代码压缩、ESLint、Prett
写一个为await自动加上catch的loader逐渐了解AST以及babel
我们在日常开发中经常用到async await去请求接口,解决异步。可async await语法的缺点就是若await后的Promise抛出错误不能捕获,整段代码区就会卡住。从而使下面的逻辑不能顺利执行。也许会有人说,卡住就是为了不进行后续的代码,以免造成更大的错误,可大多数情…
手写webpack核心原理,再也不怕面试官问我webpack原理
需要读到入口文件里面的内容。 分析入口文件,递归的去读取模块所依赖的文件内容,生成AST语法树。 我们创建了add.js文件和minus.js文件,然后 在index.js中引入,再将index.js文件引入index.html。 现在我们打开index.html。你猜会发生什…
前端进阶之 JS 抽象语法树
Babel 是 JavaScript 编译器 compiler,更确切地说是源码到源码的编译器,通常也叫做 转换编译器(transpiler)。 意思是说你为 Babel 提供一些 JavaScript 代码,Babel 更改这些代码,然后返回给你新生成的代码。 Babylon…
深入浅出 Babel 上篇:架构和原理 + 实战
✨满满的干货,不容错过哦. 写文不易,点赞是最大的鼓励。 文章下篇已经更新:深入浅出 Babel 下篇:既生 Plugin 何生 Macros 有点冷清,赞起来。 上图是 Babel 的处理流程, 如果读者学习过编译器原理,这个过程就相当亲切了. 1️⃣词法解析(Lexical…
面试官: 你了解过Babel吗?写过Babel插件吗? 答: 没有。卒
遂卒.... 开玩笑的,既然提到了,又没回答上来什么,哎哟我这暴脾气,一想到今晚就睡不着,连夜把它撸了。 那么我们来从零写个插件吧。 你会发现Babel解析成表达式里面再嵌套表达式。 到这里,已经向你大概的讲解了,如何编写一个Babel插件,再也不怕面试官问我答不出什么了哈..…
Babylon-AST初探-实战
经过之前的三篇文章介绍,AST的CRUD都已经完成。下面主要通过vue转小程序过程中需要用到的部分关键技术来实战。 注意:,跟我们之前介绍的一致,为了完成上述转换,要把输入和输出均放入AST explorer,查看其先后的结构对比。 将所有的this.[data member]…
AST抽象语法树——最基础的javascript重点知识,99%的人根本不了解
抽象语法树(AST),是一个非常基础而重要的知识点,但国内的文档却几乎一片空白。 本文将带大家从底层了解AST,并且通过发布一个小型前端工具,来带大家了解AST的强大功能 Javascript就像一台精妙运作的机器,我们可以用它来完成一切天马行空的构思。 我们对javascri…
从babel讲到AST
babel的过程:解析——转换——生成。 比如我们在读一句话的时候,我们也会做分词操作,比如:“今天天气真好”,我们会把他切割成“今天”,“天气”,“真好”。 那换成js的解析器呢,我们看一下下面一个语句console.log(1);,js会看成console,.,log,(,…
手把手带你入门 AST 抽象语法树
抽象语法树 (Abstract Syntax Tree),简称 AST,它是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。 并且如果你想了解 js 编译执行的原理,那么你就得了解 AST。 js 执行的第一步是读取 …