1. string类型的创建
var str = new String(s);
var str = "abcdefg";
2. 判断是否为String类型
instanceOf 判断是否为String类型
3. 字符串中字符的查找
charAt(index) 返回在index索引位置上的长度为1的字符串(即该位置的字符)
charCodeAt(index) 返回在index索引位置上的字符的unicode编码
fromCharCode(arg1,arg2,arg3...)
参数个数不限,与charCodeAt()方法相反,是将unicode码转化为字符
4. 字符串的操作方法
concat() / "+" 连接字符串,通常“+”更好用,效率更好
toString() 返回字符串
valueOf() 返回String对象的原始值
slice(start,end) 返回从start到end间的字符串(不包括end索引的字符)
substr(start,length) 返回从start开始的长度为length的字符串(返回的是新字符串)
substring(start,end) 返回从start开始到end间的字符串,与slice类似。
slice,substr,substring区别:
当参数为负值的时候,slice将从尾部进行计算,截取字符串。
substr() 中start参数将会从尾部计算位置,end将会转化为0;
substring()中将会将负值都转化为0.
例如:
"abcdef".slice(-3,-1) => "ef"
"abcdef".substr(-3,-1) => ""
"abcdef".substr(-3,2) => "ef"
"abcdef".substring(-3,-1) => ""
5. 字符串的位置方法
indexOf(str,start) 返回所查找字符串str所在位置的索引,没有查找到返回-1; start参数可选,表示开始查找的位置
lastIndexOf(str,start) 从后向前查找str,返回索引,查找失败返回-1
6. 字符串常用方法
trim() 创建字符串副本,返回删除前后空格后的字符串
sub() 将字符串显示为下标
sup() 将字符串显示为上标
split() 将字符串按照括号内的符号分隔成数组
localeCopare(str) 用本地的方法来比较字符串的大小。字符串排名在参数之前,返回-1;相等,返回0;在参数之后,返回1;
7. 字符串的大小转换方法
toLowerCase() 将字符串转化为小写形式
toUpperCase() 将字符串转化为大写形式
toLocaleLowerCase() 将字符串按照本地方法转化为小写形式
toLocaleUpperCase() 将字符串按照本地方法转化为大写形式
与 toLowerCase() 不同的是,toLocaleLowerCase() 方法按照本地方式把字符串转换为小写。只有几种语言(如土耳其语)具有地方特有的大小写映射,所有该方法的返回值通常与 toLowerCase() 一样。
8. 字符串的模式匹配方法
match(pattern)
str.match(pattern) 对字符串进行pattern匹配,
1. 如果pattern是字符串或者是非全局搜索的正则式,那么只执行一次匹配。返回的是一个数组,其中位置0处保存的是该匹配文本,其他元素保存的是str中匹配到的字串。返回的数组有index属性(子串开始的位置),input属性(声明该字符串的引用)。(找不到的话,返回为null)
2. 如果是全局搜索,返回的是一个数组,保存的是str中匹配到的子串。也没有index,input属性
exec()
与match()方法类似。
1. 当检索对象为字符串或非全局正则式时候,行为与match类似
2. 当检索对象为全局正则式的时候,其行为更为复杂。当exec()匹配到相符的文本时,会将str 的lastIndex属性设置为当前匹配文本的最后一个字符所在位置的下一个位置。这样就可以通过循环检索到所有的匹配文本。当再也找不到匹配文本的时候,将会返回null,并将lastIndex置为0;
注意:当一次匹配结束后,如果想要匹配新的字符串,必须手动将lastIndex设置为0;
search(pattern)
pattern可是是字符串,也可以是正则式。返回值为第一个匹配文本的开始位置index,找不到则返回-1
replace(pattern,replacement)
pattern可以使字符串,也可以是正则式。replacement可以使字符串,也可以是函数
该方法是查找并替换的操作。返回一个新的字符串
如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。
如果replacement是字符串,那么每个匹配都将由字符串替换。
replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。