例如,考虑以下 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 版本无条件地无法检查此代码。显然,JSLint 作者不想回答在这种情况下我们应该做什么,从他删除我的问题来看;但也许有人可以回答在这种情况下我该怎么办?
- 我不想显着改变应用程序逻辑;
- 我不想通过让客户端模式在非严格上下文中执行来编写不安全的代码(Douglas Crockford 应该也想要);
- 我不想通过完全禁用此文件的 JSLint 来编写不安全的代码(Douglas Crockford 应该也想要这样做);
- 我不希望 JSLint 报告被
unnecessary 'use strict'
消息“垃圾邮件”,这样就可能忽略一些真正重要的事情。