为什么在我的所有源js文件中都省略了分号?

时间:2018-01-02 17:15:15

标签: javascript aptana automatic-semicolon-insertion

我在Aptana开始一个Web项目并已下载bootstrap(v 3.3.7)和jQuery(压缩)。当我将文件导入我的js文件夹时,所有文件都会出现警告标志,我能看到的唯一警告是到处都有分号丢失。我想我已经读过js中没有必要使用分号(虽然这是使用它们的最佳做法),但是我在上课之前已经下载了这些文件,并且没有收到这个警告。

我做错了吗?这些文件可以使用吗?

1 个答案:

答案 0 :(得分:2)

  

这些文件可以使用吗?

是的,JavaScript解析器可以使用称为自动分号插入的错误更正程序* built into the language specification来纠正大多数(但不是全部)地方丢失的分号。因此,确实允许将它们留在ASI将为您修复的地方。但是,如果您这样做,了解ASI的规则非常重要。 (在任何情况下都要了解;的规则很重要。)Bootstrap团队知道规则。 (jQuery使用显式分号。)

听起来你只是启用了一个lint风格的警告,你没有启用它,除非在ASI修复的地方标记丢失的分号。

您可以通过搜索" lint"的选项来禁用警告。或"代码风格"或者"代码质量"选项,查找相关选项,然后将其关闭,但我不会。相反,我会寻找如何从lint /代码样式/代码质量分析中免除库,因为您使用的每个库的来源都不太适合您的整体编码样式规则。

* According to语言的原始创作者Brendan Eich:

  

ASI(正式来说)是一种语法错误纠正程序。如果您开始编码就好像它是一个普遍的重要换行规则,那么您将遇到麻烦。

(有趣的是,他还说他希望他最初的新行更多更重要而不是更少。但正如他所说,该船于1995年航行......)