js-换行可能导致的问题

JavaScript 换行可能导致的问题

遇到的问题

  • 最近在项目当中遇到了一个问题:某一行的代码因为长度过长,就加了一个换行,结果运行之后结果不一样.后来出现问题后仔细排查终于确定了问题的原因.下面举一个简单的例子,以下面两个代码为例:

return {
       name:function ()
       {
           alert(1);
       }
   };

return 
{
      name:function ()
      {
          alert(1);
      }
  };

原因分析

  • 如果简单对比两个代码的话,确实一点毛病没有,但是运行的时候可能就会有报错的可能性.
  • 查阅了部分资料后,知道js有一个自动修复机制——在程序可能有缺陷的时候,自动插入分号补全,但这个机制很不靠谱,常常会掩盖一些错误。
  • 这样上面两个代码片在运行的时候就会展示出不一样的内容,第二块代码块在运行的时候return后面会自动补齐一个分号
return;
{
	...
}
  • 这样就会报错了~

小建议

我是在修改别人代码的时候手欠,看见内容比较长,就手动换行了一下,结果导致了项目在运行的时候报错.所以综上所述,有几个不成熟的小建议送给自己:

  • 不要刻意更改别人的代码,除非是项目需要或者在项目重构的时候
  • 在不得已个更改别人代码之后,一定一定要验证是否正确,养成良好的习惯,避免在后期遇到问题的时候再排查,这样浪费的时间远远多于当初验证的时间!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值