通过JSHint忽略切换

时间:2013-09-25 21:37:54

标签: javascript jshint

我正在通过JSHint运行我的代码,而且我遇到了这个错误:

  

break

之前预期case声明

在这段代码上:

switch(true)
{
    // Renames skill1=abc to section_8_1_body=abc
    case Major === 0 && Minor === 0 && Patch < 433:
        upgraded = upgraded.replace(/(\s+)skill(\d)=/gm, '$1section_8_$2_body=');
    /*falls through*/

    // Example
    case Major === 0 && Minor === 0 && Patch < 442:
        console.log('test');
    /*falls through*/
}

代码检查文件的版本信息,并将其升级以与最新版本的软件兼容。因此,case s是有意的,因此可以通过多个版本升级文件。

但是,即使it is supposedly valid,我仍然会收到错误消息添加 /*falls through*

如何让我的case成功通过JSHint?

1 个答案:

答案 0 :(得分:16)

JSHint似乎希望评论在case之前就行了。

// Example
/* falls through */
case Major === 0 && Minor === 0 && Patch < 442:
    console.log('test');

根据说明in the source code,它不会承认评论:

// You can tell JSHint that you don't use break intentionally by
// adding a comment /* falls through */ on a line just before
// the next `case`.