在定义/已经定义之前使用了jslint clickHandler

时间:2014-11-04 22:49:10

标签: javascript jslint

我最近开始使用JSLint,就像许多人一样,我面对的是“之前使用过的”和“已定义”。我在这里找到了一些解决方案,我确实设法解决了一些问题,但现在我陷入了困境。我的代码是这样的:

var foo;   
foo = addEventListener("click", clickHandler, false);  
... 
function clickHandler() {...};   

这样代码可以工作,但是我得到了“使用前定义”警告。如果我将clickHandler添加到“var”,那么当我调用它时,它将是未定义的,迫使我重新排序我的代码并将处理程序的定义放在代码的中间(在我看来可读性较差)。有没有一种方法可以调用clickHandler并在使用后得到它的定义?

1 个答案:

答案 0 :(得分:2)

如何将代码重组为

function clickHandler() {...};
var foo;   
foo = addEventListener("click", clickHandler, false);  
... 
  

有没有一种方法可以调用clickHandler并在使用后得到它的定义?

当然,只需保留代码即可。它将工作。 JSLint只是指出了可能的问题或样式违规。并非它抱怨的所有内容实际上都是一个问题。

如果您想要更灵活的短信,请使用JSHint