我在 JavaScript 中的一些地方遗漏了分号,但是在任何浏览器中都没有抛出错误。是否需要末端的 ;?
;
如果它没有抛出编译器错误,那么应该没问题。不过,你最好记得一直使用它们,因为你可能会使用的一些语言,比如 Objective-c,对它们的使用是坚定不移的。
这个概念被称为 JavaScript 分号插入或“ 自动分号插入”。这篇博客文章: JavaScript 分号插入: 您需要知道的一切(从 原版的归档)以一种可以理解的方式使用标题下的例子很好地概述了这个概念:
它甚至深入研究了关于这个主题的 官方 ECMAScript 规范。
Javascript 做了一些叫做“分号插入”的事情,这意味着你实际上可以编写在某些地方省略分号的代码,当代码被解析时,它们基本上会为你添加。
发生这种情况的规则有点复杂。为了简单起见,许多开发人员只是假装分号插入不存在。
编辑01-20-2020: (实际上有一些模糊的情况,不包括分号会导致运行 JS 代码的问题。实际上,JS 并不总是知道如何智能地为您插入分号。在英语中,我能比较的最接近的东西是牛津逗号,有些人认为你不需要它,但我们都看到过关于错过标点改变句子意思的笑话。除非你想学习所有的边缘情况,或者更糟糕的是找出困难的方法,那么建议你总是使用它们。)
JavaScript 编程不需要分号,但我建议您使用它。它使您的代码更具可读性,实际上是一个很好的实践,几乎所有很酷的编程语言都使用它。
表明立场,利用它,现在就看你的了!
你写的 javascript 没有分号,你只需要插入它们,如果你开始一行与 Parantesis (或括号 [。
(
[
糖果 times()函数就是一个很好的例子:
times()
<script> var somthing = 1 + 3 ;(5).times(function(n){ console.log(n + " line") //prints "X line" 5 times }) </script>
说用分号写代码会使代码更易读是荒谬的。它使您的代码更加凌乱。看看这个页面上没有分号的代码,告诉我它的可读性较差。它更容易阅读,不那么杂乱,更干净,更优雅。分号是丑陋和不必要的。见这篇文章: https://mislav.net/2010/05/semicolons/