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

代码中的“;”

作者: 搬不完的元猿员 | 来源:发表于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