zoukankan      html  css  js  c++  java
  • js:不是空字符串的空字符串引起的bug

    今天在用js的时候,使用了两段完全相同的代码,可是一个报错,一个好好的

    代码如下:

    <script type="text/javascript">
        console.log("a");
    </script>
    <script type="text/javascript">
      console.log("a");
    </script>

    注意,这两段代码一模一样(眼睛看起来是的),但是运行结果却是:

    你们在运行时,要复制我的代码,不要自己敲,就能出现上面的结果。

    这个问题困扰了我好几个小时,我在想,到底是什么原因呢?

    为了解决这个问题,我将两段代码各种换来换去,发现下面的和上面的肯定不一样。

    于是,我用FireFox调试,发现了一个很惊讶的结果:

    首先结果一样:一个出错,一个正确

    我通过火狐浏览器进入文件,下面就是神奇的时刻,

    很显然,得出一个结论:两个console.log("a");前面的空格不一样。

    通过其他前辈的帮助,我了解了,是因为两个空格,一个是在半角输入法下的,一个是在全角输入法下的。

    在全角输入法下,空格是占空间的,不是真正意义的空格,它嵌套进编程中,无法编译就报错了。

    这会导致,明明看起来是相同的代码,却因为看不见的空格导致运行不一样。

  • 相关阅读:
    (9)在结果中筛选
    (8)为列表结果分页
    (7)为结果排序
    (6)找回忘记的密码
    (3)验证用户的输入
    (5)发送欢迎邮件
    (4)实现多语言
    (2)通过脚手架自动生成controller和view ----代码先行/数据库先行
    (1)用密码保护限制对view的访问
    (转)scanf()总结
  • 原文地址:https://www.cnblogs.com/zdhblog/p/6867558.html
Copyright © 2011-2022 走看看