我已经看到了一些JavaScript解析器生成:JavaScript分析器发电机
PEG.js(http://pegjs.majda.cz/)
ANTLR(http://www.antlr.org/)
JS/CC(http://jscc.jmksf.com/)
有没有人有任何经验?
有什么优点和缺点?这些库准备好了吗?和性能?
编辑:
我想分析和在javascript
我已经看到了一些JavaScript解析器生成:JavaScript分析器发电机
PEG.js(http://pegjs.majda.cz/)
ANTLR(http://www.antlr.org/)
JS/CC(http://jscc.jmksf.com/)
有没有人有任何经验?
有什么优点和缺点?这些库准备好了吗?和性能?
编辑:
我想分析和在javascript
运行不同的语言我不知道,如果你想有一个解析器生成,将吐出一个JavaScript写的分析器或将使用的解析器生成用于构建JavaScript解析器的JavaScript语法。
无论如何,我只使用ANTLR和JavaCC。 ANTLR允许你用不同的语言(C,C#,Java)生成你的解析器,它很酷地检查你的上下文无关语法表达式在他们的GUI树状表单上。尽管如此,从来没有为它找到JavaScript语法。
JavaCC有一个缺点。仅在Java中生成解析器。另一方面,我发现学习起来更容易,并且从构建解析器的部分开始 - 我发现它是最好的部分 - 围绕它创建任何你想要的东西,比如代码翻译器,修改器等等。
我想解析并运行一个不同的javascript中的语言。 – Atomble 2011-06-03 02:59:47
@Atomble Jison有一个在线演示,所以它很容易开始使用它:http://zaach.github.io/jison/try/ – 2013-12-05 01:35:51
JavaCC可以与GWT一起使用来生成基于JavaScript的解析器,以下博客:http://consoliii.blogspot.co.uk/2014/04/creating-gwt-compatible-parser-using.html – Chris 2014-04-17 17:27:53
PEG.js非常易于使用。它的“在线试用”功能对于快速学习如何使用系统非常有用。我目前在Rhino环境中使用它来解析我正在写的语言。我不是犀牛的忠实粉丝,但是PEG.js确实很棒。
此问题不应该被视为“不具有建设性”。询问模块和编程工具的利弊绝不是主观的。 – 2014-06-08 05:36:32
我同意这不应该被标记为“不具有建设性”。例如,JavaScript Parser生成器的性能可以使用[benchmark](http://sap.github.io/chevrotain/performance/)进行度量,基准不是主观的... – bd82 2017-04-28 10:52:06