【发布时间】:2011-07-19 09:03:14
【问题描述】:
更新:原来这是重复的:JSLint: Using a function before it's defined error
我们在我们的项目中新采用了 jslint,正如它所承诺的 - jslint 开始伤害我们的感情。但不仅如此,它还让我们质疑它的许多规则。老实说,对我来说,它在某种程度上类似于 ANSI C 编程风格。这是一个:
JS Lint: 'someMethodFoo' 在定义之前被使用。
这是因为我们使用了自上而下的编码风格:每个文件首先包含最重要的方法。该方法的实现被分解为“子”方法调用,以保持代码干净和结构良好。这意味着在大多数 情况下,方法是在定义之前使用的。事实上,我认为这是一种良好的做法,它使代码对未来的读者更容易理解,因此更易于维护。
为什么 JS Lint 要我们把它颠倒过来?
我们可以通过使用 --undef 标志简单地关闭此选项。但是有反对的理由吗?例如,顺序会影响口译员的表现吗?在每个浏览器迟早都会从解释器切换到编译器的时代,这是否重要?
【问题讨论】:
标签: jslint