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