【发布时间】:2012-04-25 16:58:24
【问题描述】:
在这种情况下解决 jslint 错误的正确方法是什么?我正在向使用它的对象添加一个 getter 函数。如果不在循环内创建函数,我不知道该怎么做。
for (var i = 0; i<processorList.length; ++i) {
result[i] = {
processor_: timestampsToDateTime(processorList[i]),
name_: processorList[i].processorName,
getLabel: function() { // TODO solve function in loop.
return this.name_;
}
};
}
【问题讨论】:
-
为什么不完全消除 jslint 错误? Here's如何。
-
因为错误是有原因的。我不认为编写这样的代码非常好,其中许多完全相同的函数被无缘无故地创建。
-
有时 jslint 不一定是正确编码风格的终极指南...
-
是的(我想,我已经很多年没有使用过 jslint 了),但是在我的书中,任何没有真正原因地创建大量相同资源的代码都是糟糕的代码。唯一可行的情况是它会带来性能提升。在这种情况下,您可能会争辩说它使代码更具可读性,但我认为这是非常微不足道的。作为 javascript 开发人员,您需要了解
this的工作原理。
标签: javascript jslint