我有一些客户端 JavaScript 代码,想检查该文件是否有语法错误/警告。
检查我的 JavaScript 文件是否存在“编译时”错误(例如括号不匹配或关键字拼写错误)的最简单方法是什么?
我有一些客户端 JavaScript 代码,想检查该文件是否有语法错误/警告。
检查我的 JavaScript 文件是否存在“编译时”错误(例如括号不匹配或关键字拼写错误)的最简单方法是什么?
将其复制并粘贴到http://www.jslint.com/但要准备好“让你的感情受到伤害”。
在 Chrome 浏览器中使用 (Tools->JavaScript console) 或 (CTRL + SHIFT + J) 打开 JavaScript 控制台总是一个不错的起点。但是,JSLint确实是您最好的选择。
我建议试用Google Closure Compiler。它不仅可以检查您的代码是否存在错误,还可以执行一些优化。这里的“编译器”可能有点用词不当,因为它接受 JavaScript 并输出回 JavaScript。
要试用它,您可以将代码复制并粘贴到在线Closure Compiler Service中。
我注意到很多人建议使用 JSLint。我刚刚从 John Resig的一条推文中偶然发现了JSHint ,它看起来非常灵活,可以执行编码约定。
如果您真的担心制表符和空格,JSLint 等都很棒,但对于 JS 语法,我使用http://esprima.org/demo/validate.html
我正在将一些小的 JS/jQuery 调用+函数放入我的 php 中,esprima 检查器适合我。
使用类似 FireBug for Firefox 的东西。
使用火狐浏览器下载安装插件:https ://getfirebug.com/downloads/
如果您有旧版本的 Firefox,请单击下载旧版本,然后单击.xpi
要安装的文件。选择与您的 Firefox 版本兼容的最新日期。
将此代码放入名为的文件中whatever.html
:
<script type="text/javascript">
var successFunction(){
}
</script>
用火狐打开那个文件。打开萤火虫窗口。单击控制台选项卡。启用它。它应该告诉你上面的代码有错误:
有两种方法可以找到问题:
静态分析 您可以将 jshint/jslint 与 gruntjs builder 一起使用,以识别大部分语法问题。 https://github.com/gruntjs/grunt-contrib-jshint
运行时错误管理 您可以使用JsLog.me等日志服务从客户端捕获错误和日志。每个浏览器都有自己的 JavaScript 运行时环境,因此客户端日志记录可以捕捉现实世界的问题。