JS操作字符串

JS操作字符串

1、函数:split()

把字符串按分隔符分割成数组。

语法:字符串.split(separator,limit);

separator:分隔符。

功能:使用一个指定的分隔符把一个字符串分割存储到数组

例子: str=”jpg|bmp|gif|ico|png”; arr=str.split(”|”);

//arr是一个包含字符值”jpg”、”bmp”、”gif”、”ico”和”png”的数组

分割后的数组当中是不包含这个参数的。它的左右必需切割成数组中的数据,如果没有的话,就为空。

1 var str='imguo';
2 var a=str.split('i');
3 console.log(a);//["", "mguo"]

如果参数没有,或者参数是一个空格字符,会把整个字符串分割成一个数组。

1 var str='imguo';
2 var a=str.split();
3 console.log(a);//["imguo"]

如果参数为一个空字符串的话,它会把字符串中的每一个字符都分成数组中的每一个数据。

1 var str='imguo';
2 var a=str.split('');
3 console.log(a);//["i", "m", "g", "u", "o"]

limit:分割后数组的长度,没有的话默认为全部。

1 var str='imguo';
2 var a=str.split('',2);
3 console.log(a);//["i", "m"]

返回值:
返回一个截取后的数组,原字符串不变。

2、函数:join()

功能:使用您选择的分隔符将一个数组合并为一个字符串

例子: var delimitedString=myArray.join(delimiter);

var myList=new Array(”jpg”,”bmp”,”gif”,”ico”,”png”);

var portableList=myList.join(”|”);

//结果是jpg|bmp|gif|ico|png

3、函数:concat()

功能:将两个数组连接在一起;

例子:arr1=[1,2,3,4]

  arr2=[5,6,7,8]

  alert(arr1.concat(arr2))  //结果为[1,2,3,4,5,6,7,8]

4、函数:charAt()

index:索引值,如果参数没有,默认为0。
取值范围:0-字符串的length-1,如果超出这个范围,比如小于0或者大于等于length,会返回一个空字符。

功能:返回指定位置的字符。字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。

例子:var str='a,g,i,d,o,v,w,d,k,p'

alert(str.charAt(2))  //结果为g

5、函数:charCodeAt()

index:索引值,如果参数没有,默认为0。
取值范围:0-字符串的length-1,如果超出这个范围,比如小于0或者大于等于length,会返回一个NaN。

功能:charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。

方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。

例子:var str='a,g,i,d,o,v,w,d,k,p'

alert(str.charCodeAt(2))  //结果为103。即g的Unicode编码为103

6、函数:slice()

beginSlice:起始位置。
endSlice:结束位置,没有这个参数默认为最后一个字符的位置。

如果两个参数都没有的话,返回整个字符串。

功能:arrayObject.slice(start,end)

start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。

end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

返回一个新的数组,包含从start到end(不包括该元素)的arrayobject中的元素。

例子:var str='ahji3o3s4e6p8a0sdewqdasj'

alert(str.slice(2,5))   //结果ji3

7、函数:substring()

定义和用法 substring 方法用于提取字符串中介于两个指定下标之间的字符。

语法:字符串.substring(indexStart,indexEnd);

indexStart:起始位置,必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。。
indexEnd:结束位置,一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。

如果省略该参数,那么返回的子串会一直到字符串的结尾。

返回 一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。 说明 substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。 如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。 如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。 如果 start 或 end 为负数,那么它将被替换为 0。

例子:

复制代码
1 var str='hello';
2 var a=str.substring(1);
3 console.log(a);//ello
4 var str='hello';
5 var a=str.substring(1,3);
6 console.log(a);//el
复制代码

如果两个参数都没有,返回整个字符串。

1 var str='hello';
2 var a=str.substring();
3 console.log(a);//hello

返回值:
返回截取的字符串,原字符串不变。

substring()和slice()的区别

1、slice的参数可以为负数,slice的起始位置是不能大于结束位置的。
2、substring的参数必需为正数,substring的起始位置可以大于结束位置,它会自动把两个位置调换。

8、函数:substr

定义和用法 substr 方法用于返回一个从指定位置开始的指定长度的子字符串。

语法:字符串.substr(start,length);

参数  start 必需。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。

   length 可选。在返回的子字符串中应包括的字符个数。 说明 如果 length 为 0 或负数,将返回一个空字符串。 如果没有指定该参数,则子字符串将延续到stringObject的最后。

返回值:返回一个截取后的字符串,原字符串不变。

举例: var str = "0123456789";

   alert(str.substring(0));------------"0123456789"

   alert(str.substring(5));------------"56789"

  alert(str.substring(10));-----------""

  alert(str.substring(12));-----------""

  alert(str.substring(-5));-----------"0123456789"

  alert(str.substring(-10));----------"0123456789"

  alert(str.substring(-12));----------"0123456789"

  alert(str.substring(0,5));----------"01234"

  alert(str.substring(0,10));---------"0123456789"

  alert(str.substring(0,12));---------"0123456789"

  alert(str.substring(2,0));----------"01"

  alert(str.substring(2,2));----------""

  alert(str.substring(2,5));----------"234"

  alert(str.substring(2,12));---------"23456789"

  alert(str.substring(2,-2));---------"01"

  alert(str.substring(-1,5));---------"01234"

  alert(str.substring(-1,-5));--------""

9、函数:indexOf()

作用:
通过字符去找对应的下标值,找这个字符首次出现的位置(从左往右)。

语法:字符串.indexOf(searchValue,fromIndex);

参数:
searchValue:要找的字符。
fromIndex:开始查找的位置,默认值为0。

复制代码
1 var str='imguo';
2 var a=str.indexOf('i');
3 console.log(a);//0
4 var b=str.indexOf('uo');
5 console.log(b);//3
6 var c=str.indexOf('g',2);
7 console.log(c);//2,从下标为2(g)的字符开始查找,找到以后,返回这个字符在整个字符串中的下标值。
复制代码

返回值:
如果查到的话,返回这个字符对应的下标值。如果没查到,返回-1。

1 var d=str.indexOf('g',3);
2 console.log(d);//-1,因为下标3的字符是u,从u往后找不到g了,所以返回-1,如果此时将字符串改为'imguog'的话,返回的就是5。

 

 

10、函数:lastIndexOf()

作用:
跟indexof的作用一样,只不过它查找的顺序是从右往左找。

语法:字符串.lastIndexOf(searchValue,fromIndex);

参数:
searchValue:要找的字符。
fromIndex:从哪里开始找,没有参数的话默认为str.length-1。从下标对应的字符开始往右找,找到字符后,返回这个字符在整个字符中的位置,如果有多个相同的字符,则返回这个字符最后出现的位置。

复制代码
1 var str='imguo';
2 var a=str.lastIndexOf('u');
3 console.log(a);//3 它是从右往左找,找到后返回这个字符在整个字符串里的下标值
4 var str1='heiha';
5 var b=str1.lastIndexOf('h');
6 console.log(b);//3 虽然找到两个h,但是它返回的是从左至右最后一个h的位置,所以是3
7 var c=str1.lastIndexOf('h',1);
8 console.log(c);//0
复制代码

返回值:
如果查到的话,返回这个字符对应的下标值。如果没查到,返回-1。

1 var str='imguo';
2 var d=str.lastIndexOf('b',3);
3 console.log(d);//-1 字符里没有找到b

 

11、函数:toLowerCase()

作用:把字符串转成全小写。

语法:字符串.toLowerCase();

返回值:返回一个全小写的字符串,原字符串不变。

1 var str='ImGuoWei';
2 var a=str.toLowerCase();
3 console.log(a);//"imguowei"

 

12、函数:toUpperCase()

作用:把字符串转成全大写。

语法:字符串.toUpperCase();

返回值:返回一个全大写的字符串,原字符串不变。

1 var str='welcome';
2 var a=str.toUpperCase();
3 console.log(a);//"WELCOME"

 

 

13、函数:trim()

作用:去掉字符串前后的所有空格。

语法:字符串.trim();

返回值:返回一个不包含首尾空格的字符串,原字符串不变。

1 var str='          abc efg    ';
2 var a=str.trim();
3 console.log(a);//"abc efg" 只去除首尾的空格
原文地址:https://www.cnblogs.com/Michelle20180227/p/10772448.html