JS常见AST与示例代码对应

AST (Abstract Syntax Tree),译为抽象语法树,是编译原理中的一个概念,为源代码的抽象语法结构的树状表示,树上的每个节点都表示源代码中的一种结构,这种数据结构可以类别为一个大的 JSON 对象。通过AST 技术,我们面对的就不再是各种符号混杂空格而成的文本字符串,而是一个严谨规范的 树形结构,我们可以通过对 AST 树节点的一系列操作,借助机器高效且精准地修改代码。 AST 的用途很广, IDE 的语法高亮、代码检查、格式化、压缩、转译等,都需要先将代码转化成 AST 再进行后续的操作, ES5 和 ES6 语法差异,为了向后兼容,在实际应用中需要进行语法的转换,也会用到 AST 。 AST 并不是为了逆向而生,但做逆向学会了AST ,在解混淆时可以如鱼得水.