charAt()
作用:
通过下标值找到对应的字符。
语法:
1字符串.charAt(index);
参数:
index:索引值
取值范围:0-字符串的length-1,如果超出这个范围,比如小于0或者大于等于length,会返回一个空字符。
1varstr='guowei';2vara=str.charAt(0);3console.log(a);//g4varb=str.charAt(-1);5console.log(b);// 空字符串6varc=str.charAt(str.length);7console.log(c);// 空字符串8vard=str.charAt(str.length-1);9console.log(d);//i
如果参数没有,默认为0。
1varstr='xiha';2vara=str.charAt();3console.log(a);//x
返回值:
返回一个参数对应的字符。
1varstr='song';2console.log(str.charAt(2));//n
charCodeAt()
作用:
通过下标找到对应字符的Unicode编码。
语法:
1字符串.charCodeAt(index);
参数:
index:索引值
取值范围:0-字符串的length-1,如果超出这个范围,比如小于0或者大于等于length,会返回一个NaN。
1varstr='xiaoguo';2vara=str.charCodeAt(0);3console.log(a);//120 字符'x'对应的Unicode编码4varb=str.charCodeAt(str.length-1);5console.log(b);//111 字符'o'对应的Unicode编码6varc=str.charCodeAt(-1);7console.log(c);//NaN8vard=str.charCodeAt(str.length);9console.log(d);//NaN
如果参数没有,默认为0。
1varstr='hei';2vara=str.charCodeAt();3console.log(a);//104 字符'h'对应的Unicode编码
返回值:
返回参数对应的字符的Unicode编码。
1varstr='a';2vara=str.charCodeAt(str);3console.log(a);//97 字符'a'对应的Unicode编码
indexOf()
作用:
通过字符去找对应的下标值,找这个字符首次出现的位置(从左往右)。
语法:
1字符串.indexOf(searchValue,fromIndex);
参数:
searchValue:要找的字符。
fromIndex:开始查找的位置,默认值为0。
1varstr='imguo';2vara=str.indexOf('i');3console.log(a);//04varb=str.indexOf('uo');5console.log(b);//36varc=str.indexOf('g',2);7console.log(c);//2,从下标为2(g)的字符开始查找,找到以后,返回这个字符在整个字符串中的下标值。
返回值:
如果查到的话,返回这个字符对应的下标值。如果没查到,返回-1。
1vard=str.indexOf('g',3);2console.log(d);//-1,因为下标3的字符是u,从u往后找不到g了,所以返回-1,如果此时将字符串改为'imguog'的话,返回的就是5。
lastIndexOf()
作用:
跟indexof的作用一样,只不过它查找的顺序是从右往左找。
语法:
1字符串.lastIndexOf(searchValue,fromIndex);
参数:
searchValue:要找的字符。
fromIndex:从哪里开始找,没有参数的话默认为str.length-1。从下标对应的字符开始往右找,找到字符后,返回这个字符在整个字符中的位置,如果有多个相同的字符,则返回这个字符最后出现的位置。
1varstr='imguo';2vara=str.lastIndexOf('u');3console.log(a);//3 它是从右往左找,找到后返回这个字符在整个字符串里的下标值4varstr1='heiha';5varb=str1.lastIndexOf('h');6console.log(b);//3 虽然找到两个h,但是它返回的是从左至右最后一个h的位置,所以是37varc=str1.lastIndexOf('h',1);8console.log(c);//0
返回值:
如果查到的话,返回这个字符对应的下标值。如果没查到,返回-1。
1varstr='imguo';2vard=str.lastIndexOf('b',3);3console.log(d);//-1 字符里没有找到b
slice()
作用:
截取字符串。
语法:
1字符串.slice(beginSlice,endSlice);
参数:
beginSlice:起始位置。
endSlice:结束位置,没有这个参数默认为最后一个字符的位置。
1、不包含结束位置的字符。
1varstr='imguo';2vara=str.slice(1,2);3console.log(a);//m
2、起始位置不能大于结束位置,否则返回一个空字符串。
1varstr='imguo';2vara=str.slice(2,1);3console.log(a);// 空字符串
如果两个参数都没有的话,返回整个字符串。
1varstr='imguo';2vara=str.slice();3console.log(a);//imguo
返回值:
返回一个截取后的字符串,原字符串不变。
split()
作用:
把字符串按分隔符分割成数组。
语法:
1字符串.split(separator,limit);
参数:
separator:分隔符。
分割后的数组当中是不包含这个参数的。它的左右必需切割成数组中的数据,如果没有的话,就为空。
1varstr='imguo';2vara=str.split('i');3console.log(a);//["", "mguo"]
如果参数没有,或者参数是一个空格字符,会把整个字符串分割成一个数组。
1varstr='imguo';2vara=str.split();3console.log(a);//["imguo"]
如果参数为一个空字符串的话,它会把字符串中的每一个字符都分成数组中的每一个数据。
1varstr='imguo';2vara=str.split('');3console.log(a);//["i", "m", "g", "u", "o"]
limit:分割后数组的长度,没有的话默认为全部。
1varstr='imguo';2vara=str.split('',2);3console.log(a);//["i", "m"]
返回值:
返回一个截取后的数组,原字符串不变。
substring()
作用:
截取字符串。
语法:
1字符串.substring(indexStart,indexEnd);
参数:
indexStart:起始位置。
indexEnd:结束位置,没有的话默认为最后一个字符的位置,不包含这个参数对应的字符。
1varstr='hello';2vara=str.substring(1);3console.log(a);//ello4varstr='hello';5vara=str.substring(1,3);6console.log(a);//el
如果两个参数都没有,返回整个字符串。
1varstr='hello';2vara=str.substring();3console.log(a);//hello
返回值:
返回截取的字符串,原字符串不变。
substring()和slice()的区别
1、slice的参数可以为负数,slice的起始位置是不能大于结束位置的。
2、substring的参数必需为正数,substring的起始位置可以大于结束位置,它会自动把两个位置调换。
substr()
作用:
截取指定起始位置和长度的字符串。
语法:
1字符串.substr(start,length);
参数:
start:起始位置。
length:截取的字符串长度(从指定的下标开始截取多少个字符),没有的话默认为起始位置到最后一个字符的长度。
1varstr='imguo';2vara=str.substr(1,3);3console.log(a);//mgu4varstr='imguo';5vara=str.substr(2);6console.log(a);//guo
返回值:
返回一个截取后的字符串,原字符串不变。
toLowerCase()
作用:
把字符串转成全小写。
语法:
1字符串.toLowerCase();
参数:
无。
返回值:
返回一个全小写的字符串,原字符串不变。
1varstr='ImGuoWei';2vara=str.toLowerCase();3console.log(a);//"imguowei"
toUpperCase()
作用:
把字符串转成全大写。
语法:
1字符串.toUpperCase();
参数:
无。
返回值:
返回一个全大写的字符串,原字符串不变。
1varstr='welcome';2vara=str.toUpperCase();3console.log(a);//"WELCOME"
trim()
作用:
去掉字符串前后的所有空格。
语法:
1字符串.trim();
参数:
无。
返回值:
返回一个不包含首尾空格的字符串,原字符串不变。
1varstr=' abc efg ';2vara=str.trim();3console.log(a);//"abc efg" 只去除首尾的空格