Javascript核心读书有感之类型、值和变量(5)


        "" //空字符串,0个字符
        'testing'
        "3.14"
        'name="myform"'
        "wouldn't you prefer O'Reily's book?"

ECMAScript3中,字符串直接量必须写在一行中,而在ECMAScript5中,字符串的直接量可以拆分为数行,每行必须以反斜线(\)结束,反斜线和行结束符都不是字符串直接量的内容。如果希望在一起,则可以使用\n转义字符。

需要注意的是,当使用单引号定界字符串时,需要格外小心英文中的缩写和所有格式写法,英文撇号和单引号是同一个字符,所以必须使用反斜线(\)来转义。

ii转义字符

在javascript字符串中,反斜线(\)有着特殊的用途,反斜线后加一个字符,就不再表示他们的字面含义了,比如\n 就是一个转义字符,它表示一个换行符。

复制代码 代码如下:


    \o //NUL字符
        \b //退格符
        \t //水平制表符
        \n //换行符
        \v //垂直制表符
        \f //换页符
        \r //回车符
        \" //双引号
        \\ 反斜线
        \xXX  由两位十六进制指定的Latin-1字符
        \xXXXX 由四位十六进制XXXX指定的Unicode字符

iii字符串的使用

javascript的内置功能之一就是字符串连接。将运算符+用于字符串,表示字符串连接。例如

复制代码 代码如下:


var msg = "hello" + "world"; //生成字符串hello world

要确定一个字符串的长度——其所包含的16位值的个数,可以使用length属性,比如字符串s的长度。

s.length
除了length属性,字符串还提供很多可以调用的方法。

复制代码 代码如下:


         var s = "hello,world";
            s.charAt(0); //"h"第一个字符
            s.charAt(s.length - 1) //"d"最后一个字符
             s.substring(1, 4) //"ell" 2-4个字符
             s.slice(1, 4) //ell 同上
             s.slice(-3) // 最后出现的3个字符
             s.indexOf(l ")//2字符l 第一次出现的位置
             s.lastIndexOf("l") //10 字符l最后一次出现的位置
             s.indexOf("l",3)//在位置3之后,l字符首次出现的位置
             s.split(",") //=> ["hello","world"]分隔成子串
             s.replace("h","H")// =>"Hllo,world"全文字符替换
             s.toUpperCase() //=>"HELLO,WORLD"

在javascript中,字符串是固定不变的,类似replace()和toUpperCase()方法都返回了新的字符串,原来的字符本身没有发生变化。

在ECMAScript中,字符可以当做只读数组,除了使用charAt()方法,也可以使用方括弧来访问字符串中的单个字符。(16位值)

复制代码 代码如下:


    s = "hello,world"
        s[0] //=>"h"
        s[s.length-1] //=>"d"

Foxfire很久之前就支持这样方法的字符串索引,多数现代浏览器(IE除外)也紧跟Mozailla的脚步,在ECMAScript成型之前就完成了这一特性

iiii模式匹配

javascript定义了RegExp()构造函数,用来创建表示文本模式匹配的对象,这些模式被称为“正则表达式”(regular expression),javascript彩阳Perl中的正则表达语法。String和RegExp对象均定义了利用正则表达式进行模式匹配和查找与替换的函数。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgfxyy.html