由于宗教战争和#34;在我目前的工作地点,我决定研究javascript的ASI功能的历史。
但我很难找到原因以及何时将ASI引入javascript。
它似乎永远是一个功能,但有没有一个特定的原因有两种方法来终止javascript中的语句?
有些消息来源将ASI描述为纠错功能,这意味着省略分号是不好的做法。
对依赖ASI有任何性能影响吗?
我个人更喜欢分号,因为它使意图更明确,但个人偏好在任何认真讨论中都不是一个可行的论据。
答案 0 :(得分:4)
很棒的问题!
Brenden Eich最初设计了JavaScript编程语言,我认为可以公平地说他会同意自动分号插入是该语言的设计缺陷。
我们不应该责备他。他在1995年的短短10天内设计了这种语言,不知道20年后它将成为(可能)地球上最重要的计算机语言。
在接下来的文章中,他说"我希望在1995年5月的那十天里,我在JS中的新行更加重要。"
https://brendaneich.com/2012/04/the-infernal-semicolon/
继续阅读......:)