6

不确定标题是否正确解释。

无论如何,我正在构建一个 .NET WPF 应用程序,它应该通过 JavaScript 并识别诸如

  1. 如果定义的变量最后被取消
  2. 如果正在使用 try/catch/finally 块。
  3. 函数调用

我在这里解决了所有围绕 c/c++ 的问题。现在我后悔把我的编译器类装了。

我想知道如何验证 C# 中的第 1-3 点。那里有任何图书馆可以做到这一点?

4

2 回答 2

5

您正在寻找的是用 C# 编写的用于 Javascript的抽象语法树解析器。

我知道有几个选择:

Microsoft 的 Ajax Minifier 库带有自己的 AST 解析器(用于缩小/优化 Javascript 文件)。您可以在Codeplex上找到它的源代码。

Esprima.net是另一种选择。它是流行的 Javascript 库Esprima的一个端口。

Esprima 的好处是它以通用格式(由 Mozilla 定义)输出 AST,该格式几个解析器中使用,使得移植实用程序来遍历树等变得非常容易,因为它们都使用相同的底层数据结构.

于 2014-07-08T13:27:26.693 回答
3

查看 IronJS 我知道他们有一个非常好的用于 .Net 的 JavaScript 库

IronJS

于 2013-01-16T16:05:38.550 回答