暂时禁用jshint选项W098不起作用

时间:2014-02-13 09:51:56

标签: javascript jshint

我有以下代码片段:

/* jshint -W098 */
/* jshint -W106 */
var pro6pp_auth_key = 'some key';
/* jshint +W106 */

但是,之后我想重新启用选项W098。所以我的代码片段看起来像这样:

/* jshint -W098 */
/* jshint -W106 */
var pro6pp_auth_key = 'some key';
/* jshint +W106 */
/* jshint +W098 */

这会触发错误

[L6:C20] W098: 'pro6pp_auth_key' is defined but never used.

对于选项W106,一切正常。难道我做错了什么?这是一个错误吗?

1 个答案:

答案 0 :(得分:3)

这似乎是jshint中的错误。可以使用此输入触发:

/* jshint -W098 */
var main = function (x) {
}
/* jshint +W098 */

尽管W098被关闭,jshint仍将报告以下内容。

test.js: line 2, col 9, 'main' is defined but never used. (W098)
test.js: line 2, col 23, 'x' is defined but never used. (W098)

我在jshint源中挖了一点但是找不到错误的确切来源。它似乎与doFunction in src/jshint.js在处理函数后如何恢复ignore数组有关。

这个错误有一个未解决的问题(1140)。