对标准的权威JavaScript验证

时间:2012-10-23 00:10:48

标签: javascript validation ecma262

我正在尝试验证website上的JavaScript。脚本不会抛出任何错误,并且在Chrome和Firefox(最新的稳定版本)上运行正常。但是,动画部分绝对不适用于IE(9)[* 1] [*已解决]。我已经为动画使用了jQuery和jQueryUI,并希望它可以与浏览器兼容。

通常我不会关心IE用户,但是喜欢anybrowser.org的人们的想法,并且想到坚持标准而不是使用最低的公分母并将优雅的降级留给浏览器/ JS引擎。根据w3c验证器,我的页面符合HTML5标准,我想用JavaScript做同样的事情,但找不到可接受的方法。

为什么JSLint不起作用 -

  1. 它不会占用页面并像W3c验证器一样检查。
  2. 所以没有办法检查jQuery引用的脚本。 (这里有一些SO帖子。)
  3. 我找到了ECMA-264 test page来检查浏览器,但不是我的JavaScript。

    所有序言之后的问题是:如何在我的网页上验证Javascript?是否有JavaScript的权威验证器?

    ** 1补充:缩小与不在IE9上运行的脚本无关。即使unminified version也不起作用。*

    **已解决:特定页面的问题已由this comment解决。*


    此操作始于“What is Javascript?”此处已关闭并已迁移至Programmers。感谢YannisRizos帮助我将原始问题拆分为程序员与SO之间可接受的内容。

1 个答案:

答案 0 :(得分:3)

测试套件。不,真的。

如果您想确保您的javascript在每个目标环境中都能完美运行,那么您可以为您的代码编写一个测试套件,并确保它在所有目标环境中通过。

测试套件有助于在不同平台上运行时查找代码中断的位置。因此可以帮助您解决问题。


但假设你想要的东西不那么重要,http://www.jshint.com/是你最好的选择。

http://www.jslint.com/如果你喜欢大吼大叫。

但老实说,没有验证器能够确保您的代码在没有错误的情况下运行,并且确切地说无处不在。仅仅因为您的代码正确地遵循了最佳实践,这并不意味着它可以在旧版本的IE中使用。

标准不断发展,但是一个永不更新的旧浏览器会遇到浏览器制造商在成功或准确实施或未成功实施时的任何标准。

自动或手动测试是确保工作普遍适用的唯一方法。