如何在JSLint中禁用奇怪条件检查?

时间:2014-06-15 20:27:41

标签: javascript jslint

我有一些代码可以将键盘键映射到不同长度的代码块,从简单的return false到主要的2-3行代码段,再到复杂的函数:

var k = window.event.keycode;

switch(true){
    case(k === 9):
       //
    break;

    case(k === 13):
       //
    break;

    case(k === 38 && selectedRecord > 1):
       //
    break;
}

我宁愿不创建一个带有函数列表的对象并以这种方式映射它,因为它们主要是短代码块,并且存在奇怪的复杂case

是否可以选择禁用switch(true)的检查(与其他检查一样)?

相关但不重复:Is a reversed switch statement acceptable JavaScript?

1 个答案:

答案 0 :(得分:3)

两个想法:

1)您可以通过在文件顶部添加此评论来使linter满意:/*jshint eqeqeq: true */也就是说,我仍然收到This 'switch' should be an 'if'.警告。可能是jslint / jshint不会忽略这种结构。

2)我谨此建议您借此机会清理相当奇怪的代码,并按如下方式重写switch,而不是转换linter选项。

var k = window.event.keycode;

if(k === 9) {
       //
} else if(k === 13) {
       //
} else if(k === 38 && selectedRecord > 1) {
       //
}
相关问题