为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript中的JavaScript解析器

JavaScript中的JavaScript解析器

慕姐4208626 2019-09-21 13:37:37
我需要在JavaScript源代码中添加一些轻量级语法糖,并使用基于JavaScript的构建系统对其进行处理。是否有任何用JavaScript编写的开源JavaScript解析器?在V8或类似的高性能JavaScript实现上运行时,它们是否相当快?感谢您提供的任何指导!
查看完整描述

3 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

UglifyJS(JavaScript中的JS压缩器/美化器)包含一个完整的JavaScript解析器,该解析器公开了一个简单的API。它已经过大量测试,并在某些大型项目(WebKit)中使用。


查看完整回答
反对 回复 2019-09-21
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

Crescent Fresh在评论中回答了这个问题:


JSLint包含用JavaScript编写的JavaScript解析器。参见Douglas Crockford的JSlint,第2712行左右开始解析器。JSLint被编写为还处理html,因此您必须掩盖这些部分


查看完整回答
反对 回复 2019-09-21
?
四季花海

TA贡献1811条经验 获得超5个赞

橡子是用JavaScript编写的非常快速的JavaScript解析器。它现在比esprima更快。我在Chrome表格esprima的速度比较页面中得到的结果:


Source            Esprima    UglifyJS2    Traceur    Acorn

Underscore 1.4.1  15.1       23.8         14.2       7.6

Backbone 1.0.0    17.1       30.2         16.7       7.9

jQuery 1.9.1      241.1      247.2        125.4      81.4

Total             273.3 ms   301.2 ms     156.3 ms   96.9 ms

它与Mozilla的Parser API兼容,因此您可以使用escodegen从解析树生成JavaScript。


查看完整回答
反对 回复 2019-09-21
  • 3 回答
  • 0 关注
  • 362 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信