为什么 JSLint 会产生这种警告
第 xxx 行字符 yyy 处的问题:预期 'X' 在 xx 处有一个缩进,而不是在 yyy 处。
为什么有不同的空间格式很重要?
好吧,既然你没有告诉我们这条线,我们只能猜测,但它可能是这样的。
if(someCondition)
DoThis();
DoThat();
因为它期望缩进是:
if(someCondition)
DoThis();
DoThat();
它认为您可能希望它是:
if(someCondition)
{
DoThis();
DoThat();
}
您缩进了不应该缩进或不应该缩进的东西。
这通常发生在声明了几个变量之后:
var foo,
bar;
baz = something;
或@James Curran 提到的 if 语句。只需转到第 xxx 行,看看是否缩进了不应该的内容。如果找不到,请在问题中发布代码部分,让我们看看。
正如詹姆斯指出的那样,这可能是一个间距问题。
var spam = 3;
if (3 === spam) {
spam = 4;
}
... 给我Expected 'spam' at column 5, not column 1.
如果空白不是您希望 JSLint 检查的内容(而且它通常不适合我),您有两种选择来关闭“草率的空白”检查。在网站上(或在您选择的工具中),您可以选中“white”,或者您可以在文件顶部添加指令,如下所示:
/*jslint white:true*/
var spam = 3;
if (3 === spam) {
spam = 4;
}
现在我得到了一张干净的皮棉单。