1

我正在做一个项目,其中一个要求是用户可以在一个简单的文本区域组件上编写自己的 javascript 代码。

这很容易,但我必须验证语法,例如 'error: missing ; 最后'......就像大多数语法检查器一样。

我不想开发它,因为它会花费很多时间。

有人知道是否存在插件吗?我找到了一个名为 Javascript Lint 但它是一个 .exe 文件并且它没有与 Java 的本机集成(它是一个 java ee 项目、jsp 文件等)

谢谢您的帮助!

4

2 回答 2

1

这是一个简单的自上而下的解析器:https ://github.com/douglascrockford/TDOP/blob/master/parse.js 。

更复杂的解析器是 JSLint:https ://github.com/douglascrockford/JSLint 。JSLint 是半解析器,具有 C 风格的“lint”工具(用于检查常见错误),但您可以通过不向用户报告“lint”结果来使用半解析器。您还可以关闭所有“lint”检查。

主要区别在于 JSLint 将执行检查变量是否已定义和范围内以及检查其他错误/常见不良做法等事情。

于 2012-10-11T22:09:54.380 回答
0

如果数据不重要,您可以要求用户将他们的数据粘贴到http://www.jslint.com/(Doug Crockford 的站点),它会在 JSON 中显示错误。

我们在我们的 JS 应用程序中使用了 YUI,所以我们使用了 YAHOO.lang.JSON.parse(your textarea's json content) 来验证用户的 Json。但是,我们永远无法为他们提供 Json 中的准确错误列表,我们只能告诉他们它是否是有效的 Json。

谢谢

于 2012-10-11T22:13:39.297 回答