1

我在一个项目上运行JSLint,我遇到了这个错误:

}预计和之间正好有一个空格else

在这个代码块上:

// Check for the existance of the file created by firstrun.js
if (runOnce.exists) {
    window.location = 'app:/core/firstrun.html';
}

// Check for version info
else if (!versionInfo.exists) {
    window.location = 'app:/core/createVersion.html';
}

// Check for version info条线显然是导致问题的原因;但是克罗克福德会让我把这个评论放在哪里?

我显然可以将其更改else if为 an,if因为第一个if包含重定向;我有其他评论if/else if/else不包含重定向。

4

3 回答 3

2

It looks a little weird, but I use this style.

if (runOnce.exists) {
    // Check for the existance of the file created by firstrun.js
    window.location = 'app:/core/firstrun.html';
} else if (!versionInfo.exists) {
    // Check for version info
    window.location = 'app:/core/createVersion.html';
}

Honestly, though, just forget about JSLint, for this case.
Those are just suggestions, not rules. I think readability is more important here.

于 2013-09-25T19:36:34.390 回答
2

我知道这听起来很奇怪,但您可以尝试将其与else Like this 内联:

else if (!versionInfo.exists) { // Check for version info    
        window.location = 'app:/core/createVersion.html';    
}

JsFiddle 的 JSHint 说这段 js 在语法上是有效的:/

于 2013-09-25T19:14:31.117 回答
1

设置 JSLint 选项以允许混乱的空白,否则它会尝试强制执行自己的空白样式规则,这很愚蠢(IMO):

/*jslint white: true */
于 2013-09-25T19:42:33.230 回答