我认为“糟糕的擒纵机构”代表用斜线逃避的错误用途。
为什么JSLint会在3d线上显示此函数中的消息(for ...)?
function splitTags(commaSeparated) {
var tagArray = commaSeparated.split(',');
for (var i=(tagArray.length) - 1; i>=0; i = i - 1 ){
tagArray[i] = f.trim(tagArray[i]);
}
return tagArray;
}
f.splitTags=splitTags;
编辑:我将“i--”更改为“i = i-1”并在上面发布了更改后的版本。
Lint抱怨第30个字符,这是第一个减号。
Edit2:此更改后,它不会再抱怨了。有效的新版本:
function splitTags(commaSeparated) {
var tagArray = commaSeparated.split(',');
var startWith = tagArray.length - 1;
for (var i=startWith; i>=0; i = i - 1 ){
tagArray[i] = f.trim(tagArray[i]);
}
return tagArray;
}
f.splitTags=splitTags;
奇怪。我实际上正在使用JSLint multi:http://ajaxian.com/archives/jslint-multi
所以这还没有解决,但我有一个解决方法。但是获得真正的答案会很高兴,我仍然有许多这样的代码部分。
答案 0 :(得分:0)
来自JSLint page:
JSLint期望+ +后面不会出现+或+,并且 - 不会后跟 - 或 - 。错位的空间可以将+ +转换成++,这是一个很难看到的错误。使用parens以避免混淆..
答案 1 :(得分:0)
我想从我在问题编辑中发布的解决方法中,JSLint multi根本不喜欢 for 行中的length
关键字。
不要在那里使用 length ,而是在之前的行中计算并使用变量。
使JSLint multi不要抱怨的规则。