字符方法:chatAt()和chatCodeAt()
chatAt()和chatCodeAt()都可以传入一个参数
chatAt(str):返回指定字符的位置
chatCodeAt(index):传入子字符的位置,返回子字符串的Unicode编码,用途:可以用来判断字符串中的字符是字母还是汉字
如果 index 是负数,或大于等于字符串的长度,则 charCodeAt() 返回 NaN
字符串还可以同构方括号来获取个别字符
举例:
var str ='absc';
console.log(str[1])//b
字符串的大小写转换
var str ="adFAf";
toUpperCase()转换成大写 str.toUpperCase()//ADFAF
toLowerCase()转换成小写 str.toLowerCase//adfaf
字符串的截取
slice(value1,value2),
可传入两个参数,第一个参数(必填),截取的开始位置,第二个参数(选填,指定截取到的位置),如果没有,则截取到末尾
举例:
var str="abcde":
var str.slice(2)//de
var str.slice(1,3)//bc 不包括停止截取位置的,即第三个3位置上的d(包含头部,不含尾部)
substring(value1,value2)
:第一个参数指定子字符串开始位置,第二个参数表示子字符串最后一个字符前面的位置
举例:
var str="abcde":
str.substring(1,3)//bc 不包括停止截取位置的,即第三个3位置上的d(包含头部,不含尾部)
substr(value1,value2):第一个参数指定子字符串开始位置,第二个参数表示返回的字符个数
如果没有给这些方法传递第二个参数,则将字符串的长度作为结束位置。这些方法也不会修改字符串本身,只是返回一个基本类型的字符串值
如果参数为负数
slice(1,-2)//负数加上字符串长度作为新值
substr(1,-1) //返回空字符串
substring(3,-4)// 会将负数转为0,再将两个参数大的较大的那个放在前面,这个例子相当于substring(0,3)
字符串位置方法
indexof(str1,value2):str1传入子字符,从头开始搜索,返回子字符串的位置,
lastIndexof(str1,value2):str1传入子字符串,从尾部开始搜索
两个方法的第二个参数(选填)为开始搜索位置,不填则从头(尾部)开始搜索
用途:结合两个方法可判断子字符串是否唯一。
字符串的匹配方法
match():只接受一个参数,由字符串或RegExp对象指定的一个正则表达式
和RegExp对象的exec()方法本质上相同
举例:
var text = "cat,bat,sat,fat"var pattern=/.at/g //设置全局环境,获取所有匹配项,否则获取第一个匹配项
var matches=text.match(pattern);
matches[0];
console.log(matches);//["cat", "bat", "sat", "fat"]
search():只接受一个参数,由字符串或RegExp对象指定的一个正则表达式
search():返回字符串中第一个匹配项的索引,如果没有匹配项,返回-1
举例:
var text = "cat,bat,sat,fat"
var pos = text.search(/at/): 设置全局环境与不设置,返回值一样
console.log(pos)//1
replace(),子字符串替换
接收两个参数,第一个参数可以是一个RexExp对象(正则表达式)or 字符串,第二个为用来替换掉原来字符的字符或者函数。
1)参数为字符串
var text = "cat,bat,sat,fat";
var result = text.replace('at','od');
console.log(result)// "cod,bat,sat,fat"
2)正则表达式
var text = "cat,bat,sat,fat";
var result = text.replace(/at/g,'od'); //如果不设置全局环境g,只会替换抵押给
console.log(result)// "cod,bod,sod,fod"