Javascript:没有需要半冒号的情况?

时间:2011-06-19 06:25:44

标签: javascript automation insertion

我正在设置一些数据来执行AJAX帖子,代码看起来像这样。

var data = {}
data.someId= 3;
data.anotherId = 4;

这很好用。但为什么我不需要在第一行末尾加分号?

6 个答案:

答案 0 :(得分:5)

他们是optional。你不需要任何这些。

http://mislav.uniqpath.com/2010/05/semicolons/

答案 1 :(得分:5)

因为JavaScript有Automatic Semicolon Insertion

我之前错误地称之为自动分号注入 ,这是有道理的:P

语言需要它们,但它会预处理你的脚本并试图猜测它们应该去哪里。这并不总是有效,正如您在pst的评论中所看到的那样。

您应该自己定义半冒号。不要让JavaScript猜测。

答案 2 :(得分:0)

Javascript中不需要行上单个语句的半冒号。

答案 3 :(得分:0)

JavaScript实际上不需要分号来确定语句的结尾。如果不存在分号,则它将使用新行作为语句的结尾。唯一需要使用分号的方法是,如果要将两个语句放在同一行,一个接一个。

所有这些都说,最好用分号结束你的陈述 避免混淆并避免可能会发现痛苦的错误。

答案 4 :(得分:0)

半冒号在javascript中是可选的。但它是recommended to add it

答案 5 :(得分:0)

如果您未在设置Linter的地方使用分号来检测它们,则有时会触发Linter设置。但是,一些分号在JavaScript中是可选的,包括在换行符之前放置的分号。感谢自动半结肠插入(ASI)。

ASI只是分号是可选的一组规则,它实际上并没有在你的代码中插入分号。

有些分号是必要的。必要分号的示例包括for循环和do-while循环的头部。

另外要小心,因为虽然省略了可选的分号是有效的代码,但是编写一些工具(如minifiers)来解释这些分号,因此可能会使用其中一个工具引发错误。