如何遍历spidermonkey生成的AST(Javascript文件)
How to traverse the AST generated by spidermonkey (Javascript file)
我是Spidermonkey Parser的新手,我有两个问题。第一个是(对于初学者)有一个很好的文档,说明如何使用spidermonkeyParser生成Javascript文件的AST。第二个是知道如何遍历AST。我的目标是使用AST中的信息对JS文件进行一些静态分析(类型分析、字符串分析)。
感谢
Spidermonkey的AST被公开为Javascript对象。这意味着您应该编写一个小型Javascript脚本,使用该脚本读取和解析您想要解析的实际Javascript源文件,并获得作为Javascript对象的AST。
此功能在独立的SpiderMonkey shell中可用(可能不在Firefox附带的版本中)。您需要下载完整的Spidermonkey源代码,并使用捆绑的python脚本进行构建。Shell将与您的独立SpidermonkeyJavascript引擎一起构建。这个shell只是一个接受用户命令的小型控制台程序。shell可以读取和执行独立的Javascript脚本。特别是,由这个Shell执行的那些Javascript脚本可以访问一个名为Reflect
的额外全局对象,该对象具有一个称为parse()
的方法。Shell还支持额外的文件I/O功能,这是读取要解析的目标Javascript源代码的方式。
完整AST的描述如下:
https://developer.mozilla.org/en-US/docs/SpiderMonkey/Parser_API
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 使用php或javascript从facebook相册URL中删除多余的部分
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 如何在JavaScript中将字符串转换为函数引用
- 模糊事件的Javascript测试
- Javascript更改图标
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 如何使用WCF服务和javascript表单post上传.doc文件
- javascript结合了数组和字典
- 这是什么 ==- javascript 运算符
- 从javascript创建一个列表
- 无法在通过jQuery的ajax加载的页面中执行javascript
- Javascript:selenium Web驱动程序isDisplayed()不工作
- 任何用于从 AST 生成 JavaScript 代码的工具
- 如何遍历spidermonkey生成的AST(Javascript文件)
- 在c#中遍历JavaScript AST (Esprima.Net)到Tree
- 如何在SpiderMonkey中从AST生成JavaScript代码
- 如何将JavaScript代码转换为ast的xml表示形式