zoukankan      html  css  js  c++  java
  • JavaScript 空白符(分隔符)

    分隔符(空白符)就是各种不可见字符的集合,如空格(u0020)、水平制表符(u0009)、垂直制表符(u000B)、换页符(u000C)、不中断空白(u00A0)、字节序标记(uFEFF)、换行符(u000A)、 回车符(u000D)、行分隔符(u2028)、段分隔符(u2029)等。

    在 JavaScript 中,分隔符不被解析,主要用来分隔各种记号,如标识符、关键字、直接量等信息。

    在 JavaScript 脚本中,常用分隔符来格式化代码,以方便阅读。

    示例1

    对于下面一行代码:

    function toStr(a){return a.toString();}
    

    可以使用分隔符格式化显示:

    function toStr(a){
      return a.toString();
    }
    

    一般 JavaScript 编辑器都会提供代码格式化的功能。

    分隔符使用时需要注意以下几点:

    1. 分隔符虽然无实际意义,但是在脚本中却不能缺少。

    如果在标识符与关键字之间不使用分隔符分隔,JavaScript 就会抛出异常

    示例2

    在下面代码中,把关键字 function 与标识符 toStr 连在一起,以及把关键字 return 与 toString 标识符连在一起都是错误的。

    functiontoStr(a){returna.toString();}  //错误写法
    function toStr(a){return a.toString();}  //正确写法
    

    1. JavaScript 解析器一般采用最长行匹配原则,不恰当地换行显示一句代码,容易引发异常或错误。

    示例3

    下面代码会返回意外的结果。

    function toStr(a){
        return 
        a.toString();  //错误的换行
    }
    document.write(toStr("abc"));  //实际返回 undefined,应该返回"abc"
    

    这是因为 return 作为一条独立语句,JavaScript 解析器可以正确解析它,虽然它后面没有分号,解析器在正确解析的前提下会自动为其补加一个分号,以表示该句已经结束。

    这样换行显示的 a.toString();就是下一句待执行的命令,而不是被返回的值。

    1. 不能在标识符、关键字等内部使用分隔符。

    示例4

    在下面函数中使用空格把 toString() 分为两部分,JavaScript 会因无法识别而抛出异常。

    function toStr(a){
      return a.to String();  //错误分隔符
    }
    
    1. 在字符串或者正则表达式内,分隔符是有意义的,不能够随意省略或替换。

    示例5

    在下面代码中,变量 a 和 b 被赋予相同的字符串,但是变量 b 中插入了空格,则比较结果是不相等的。

    var a = "空格";
    var b = "空格 ";
    document.write((a==b));  //返回 false,说明不相同
    
  • 相关阅读:
    常见加密算法概述
    IDEA常见错误解决
    linux Find命令教程
    用注册表更改DNS的代码分享
    关于javascript中的typeof和instanceof介绍
    javascript instanceof,typeof的区别
    Javascript typeof 用法
    浅析JavaScript中的typeof运算符
    玩转Linux文件描述符和重定向
    shell脚本 批量转换目录下文件编码
  • 原文地址:https://www.cnblogs.com/kai-/p/12317824.html
Copyright © 2011-2022 走看看