如何使用JSLint与针对不同引擎的代码?

时间:2012-05-26 16:57:59

标签: javascript jslint

例如,考虑以下Node.js代码:

(function () {
    "use strict";
    /*jslint node: true */

    var toBeExecutedInBrowser = function () {
        "use strict";
        /*jslint devel: true */
        alert('Hello world!');
    };

    exports.controller = function (req, res) {
        res.send(toBeExecutedInBrowser.toString());
    };
}());

检查此代码的最新JSLint版本unconditionally fails。显然,JSLint的作者不想回答在这种情况下我们应该做什么,从他的判断中删除我的问题;但也许有人可以回答我在这种情况下该怎么办?

  • 我不想显着改变应用程序逻辑;
  • 我不想通过让客户端模式在非严格的上下文中执行来编写不安全的代码(Douglas Crockford认为也是这样);
  • 我不想通过完全禁用此文件的JSLint来编写不安全的代码(Douglas Crockford认为也是这样);
  • 我不希望JSLint报告被unnecessary 'use strict'消息“垃圾邮件”,因此可能会忽略一些非常重要的内容。

1 个答案:

答案 0 :(得分:2)

您可能会发现 JSHint 很有趣。这是一个更仁慈的JSLint版本。此外,它还有一个NodeJS选项。