The*_*irl 80 javascript jquery jslint
如果JSLint在这种情况下抱怨"i"是一个未使用的变量,我该怎么办:
var items = "<option selected></option>";
$.each(data, function (i, item) {
items += "<option value='" + item.Value + "'>" + item.Text + "</option>";
});
Run Code Online (Sandbox Code Playgroud)
(i,item)是参数的必需顺序,我只使用"item".
除了容忍未使用的变量或重写$ .each以使用索引之外还有其他解决方案吗?我不想做这两种解决方案吗?
提前致谢.
更新:我感谢所有的建议,但这段代码只是一个例子,向您展示我的意思,我有兴趣看到一个通用的解决方案,如果有的话.谢谢.
nic*_*ckf 79
尝试:
var items = "<option selected></option>";
/*jslint unparam: true*/
$.each(data, function (i, item) {
items += "<option value='" + item.Value + "'>" + item.Text + "</option>";
});
/*jslint unparam: false*/ // so that you still get warnings from other functions
Run Code Online (Sandbox Code Playgroud)
PuZ*_*ucK 24
我认为这必须是新的:http://www.jslint.com/help.html
"JSLint引入了一个新的保留字:ignore"
所以上面简单地说:
$.each(data, function (ignore, item) {
Run Code Online (Sandbox Code Playgroud)
我=>忽略......太容易了.其余的代码可以保持不变,浏览器很高兴并且JSLint很高兴
早些时候(错误的)回答:
要安抚我需要使用的JsLint和浏览器:
Run Code Online (Sandbox Code Playgroud)function (d, i) { if (undefined !== win.undefined) { undefined(d); } return (i); }
由于undefined不是函数,浏览器在"undefined(d)"上崩溃了.因此,如果我们在浏览器中,"undefined!== win.undefined"会跳过该行.
| 归档时间: |
|
| 查看次数: |
31204 次 |
| 最近记录: |