【发布时间】:2015-02-09 09:02:54
【问题描述】:
如果忘记分号,C++ 等语言将无法使用,但 JavaScript 等其他语言会自动为您包含它们。
我从这篇文章Do you recommend using semicolons after every statement in JavaScript? 知道,建议使用分号,并且在某些情况下会产生不必要的歧义(例如在不使用大括号时在 C++ 中悬挂 else)。
在某个时间点必须决定将它们设为可选(例如,当 JavaScript 的创建者有意识地选择将其设为可选时)。
我想知道为什么做出这个决定,以及它对这些语言的用户有什么好处。
背景:我是一名新手程序员,最近才开始学习 JavaScript。
编辑:对于那些说 JavaScript 不好的 cmets,我知道。如果大多数人认为这是不好的做法,我问为什么一开始就允许它发生。
【问题讨论】:
-
“它对这些语言的用户有什么好处”——它对 JavaScript 没有好处。这在 JavaScript 中非常非常糟糕。
-
为了编译器的利益
-
@chris 不,甚至对于编译器也不行。将此功能添加到编译器需要额外的工作。
-
“我想知道为什么做出这个决定,以及它对这些语言的用户有何好处。” 只有语言的创造者才能回答这个问题。你应该问他们。
-
@cdhowie 出于某种原因,我觉得它有助于形成语法,我的意思是任何字符都可以被选中
标签: javascript c++ automatic-semicolon-insertion