美文网首页
代码中的“;”

代码中的“;”

作者: 搬不完的元猿员 | 来源:发表于2019-06-06 08:06 被阅读0次

仅供参考3/4

JavaScript的语句直接是用分号(;)来隔离的。

<html>

<body>

    <script>

        alert('hello');

        alert('world');

    </script>   

</body>

</html>

空格和tab会被自动忽略,上述语句放在一行写也是可以的。

alert('Hello');  alert('World!');

但是换行符并不会被忽略,换行符起到了分号(;)的功能。

分号(;)缺失“陷阱”

JavaScript初学者写多条语句时常常会在分号上栽跟头。

陷阱1

下面的语句是不会运行的

var a="long

    line"

语法分析程序会把它解释为

var a = "long;

  line ";

有未完结的字符串时(缺少反引号)会报错。

陷阱2

下列语句不能得到你想要的结果

return

  result;

它被解释为

    return;

  result;

这和

return result;

明显不同。

如果你想得到正确的答案,转义符()(反斜线)可以帮你。下列语句可以正确运行。

return \

result;

var a = "long \

line "

如果一个表达式没有结束,换行也会被忽略。下面的代码都是可以正常运行的,有些奇怪,不过事实就是这样。

var a = "long " +

" line "

var b = 2 + (

2 + 3

)

var b = 2 * 2

+ 4

alert(b)

总的来说,在大多数情况下,在结尾省略分号(;)是可行的,但是这样可能会导致一些莫名奇妙的bug,关于是否写分号,一直以来到存在争议,不过越来越多的人认为在结尾处加上分号是一个好习惯。

相关文章

网友评论

      本文标题:代码中的“;”

      本文链接:https://www.haomeiwen.com/subject/muhexctx.html