建议5:防止JavaScript自动插入分号

JavaScript语言有一个机制:在解析时,能够在一句话后面自动插入一个分号,用来修改语句末尾遗漏的分号分隔符。然而,由于这个自动插入的分号与JavaScript语言的另一个机制发生了冲突,即所有空格符都被忽略,因此程序可以利用空格格式化代码。

这两种机制的冲突,很容易掩盖更为严重的解析错误,有时会不合时宜的插入分号。

例如:

        var f=function(){

            return

               {

                    status:true;

              };

        }

这会在return语句中自动插入分号,返回undefined,从而导致下面真正要返回的对象被忽略。但如果把 { 放在上一行的尾部而不是下一行的头部,就可以避免此问题,如下: 

  var f=function(){

            return{

                    status:true;

              };

        }

当自动插入分号导致程序被误解时,并不会有任何警告提醒。

为了避免省略分号引起的错误,建议养成好的习惯,不管一行内语句是否完整,只要是完整的语句都必须增加分号以表示句子结束。为了方便阅读,当长句子分行显示时,在分行时应确保一行内不能形成完整的逻辑语义

如:

  var a=

       b=

       c=4;

由于一行内不能形成独立的逻辑语义,因此JavaScript不会把每一行视为独立的句子,从而不会产生歧义。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值