字符串常用属性

1.concat方法:连接字符串

1  var s1='a';
2     var s2='b';
3     var s3='c';
4     console.log(s1.concat(s2,s3));//abc
5 //    关联记忆:
6     var arr = [1, 2, 3];
7     console.log(arr.concat(4,5));//[1,2,3,4,5]

2. indexOf: 常用方法:找到匹配项返回索引值,如果没找到返回-1;indexOf也可以传入第二个参数:indexOf(str,fromIndex)表示从索引位置fromIndex开始查找,如果fromIndex省略,则表示默认从起始索引0开始查找;若fromIndex为负,则从索引0开始查找。

1     var myString="JavaScript";
2     var a1=myString.indexOf("v");
3     var a2=myString.indexOf("S");
4     var a3=myString.indexOf("Script");
5     var a4=myString.indexOf("key");// 如果没有匹配项返回 -1
6     console.log(a1)//2
7     console.log(a2)//4
8     console.log(a3)//4
9     console.log(a4)//-1

3. charAt: 返回指定索引位置的字符,若索引越界,返回空字符串。

1 myString="JavaScript";
2     console.log(myString.charAt(1));//a
3     console.log(myString.charAt(10000000000000000));//若索引越界,返回空字符串
4     console.log(myString.charAt(-1));//若索引越界,返回空字符串  -- ""
5     console.log(myString.charAt(-10000000000000000000000));//若索引越界,返回空字符串

4.substr(fromIndex,length)方法: 从起始索引fromIndex开始截取长度length的字符串

 1 //从起始索引fromIndex开始截取长度length的字符串 - 正向截取
 2     myString="JavaScript";
 3     console.log(myString.substr(1,1));//a          表示从第1个索引值开始截取,截取1个字符
 4     console.log(myString.substr(1,2));//av女忧     表示从第1个索引值开始截取,截取2个字符
 5     console.log(myString.substr(1,3));//ava        表示从第1个索引值开始截取,截取3个字符
 6     console.log(myString.substr(1,4));//avaS       表示从第1个索引值开始截取,截取4个字符
 7 
 8     //若不指定length或者length超过可截取的最大长度,则截取到结尾。
 9     console.log(myString.substr(1));//avaScript
10     console.log(myString.substr(1,4000000));//avaScript
11 
12 
13     //反向截取
14     //若起始索引为负,则从右往左开始截取 - -1表示倒数第一个, -2表示倒数第二个
15     myString="JavaScript";
16     console.log(myString.substr(-1,1));//t  表示从倒数第一个开始截取,截取1个字符
17     console.log(myString.substr(-2,1));//p  表示从倒数第二个开始截取,截取1个字符
18     console.log(myString.substr(-3,1));//i  表示从倒数第三个开始截取,截取1个字符
19     console.log(myString.substr(-4,1));//r  表示从倒数第四个开始截取,截取1个字符
20     console.log(myString.substr(-5,1));//c  表示从倒数第五个开始截取,截取1个字符
21     console.log(myString.substr(-6,1));//S  表示从倒数第六个开始截取,截取1个字符
22     console.log(myString.substr(-7,1));//a  表示从倒数第七个开始截取,截取1个字符
23 
24     myString="JavaScript";
25     console.log(myString.substr(-6,1));//S  表示从倒数第6个开始截取,截取1个字符
26     console.log(myString.substr(-6,2));//Sc  表示从倒数第6个开始截取,截取2个字符
27     console.log(myString.substr(-6,3));//Scr  表示从倒数第6个开始截取,截取3个字符
28     console.log(myString.substr(-6,4));//Scri  表示从倒数第6个开始截取,截取4个字符
29     console.log(myString.substr(-6,5));//Scrip  表示从倒数第6个开始截取,截取5个字符
30     console.log(myString.substr(-6,6));//Script  表示从倒数第6个开始截取,截取6个字符

5. substring(startIndex,endIndex):获取部分字符串,截取 起始索引startIndex 到 结束索引endIndex的子字符串,结果包含startIndex处的字符,不包含endIndex处的字符。

 1  console.log('substring用法')
 2     //男生的作业:获取av
 3     myString="JavaScript";
 4     console.log(myString.substring(1,3));
 5 
 6     //女生的作业:获取曲线S
 7     myString="JavaScript";
 8     console.log(myString.substring(4,5));
 9 
10     //其他小点:
11     //如果省略个数,则自动获取后面所有
12      console.log(myString.substring(4));//Script
13     //若startIndex或者endIndex为负,则会被替换为0。
14     console.log(myString.substring(-1,1));//J
15     //若startIndex = endIndex,则返回空字符串。
16     console.log(myString.substring(3,3));//返回空
17     //若startIndex > endIndex,则执行方法时,两个值会被交换。
18     console.log(myString.substring(3,1));//等价于myString.substring(1,3)

6. slice(startIndex,endIndex):获取部分字符串,截取 起始索引startIndex 到 结束索引endIndex的子字符串,结果包含startIndex处的字符,不包含endIndex处的字符。

1  console.log('slice(startIndex,endIndex)用法')
2     myString="JavaScript";
3     console.log(myString.slice(1,3)) //av
4     console.log(myString.slice(4,5)) //S
5     console.log(myString.slice(4)) //Script  //如果省略个数,则自动获取后面所有

slice的基本用法和substring用法一样,不同点如下:

slice(start, [end])

如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。

 如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。

1  var  myString="JavaScript";
2     console.log(myString.slice(-9,4));//ava

 如果省略 end ,那么 slice 方法将一直复制到 array的结尾。
 如果 end 小于 start,不复制任何元素到新数组中。
substring(start, end)
如果 start 或 end 为 NaN 或者负数,那么将其替换为0。
子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。
slice可以对数组操作,substring不行。

7.split()分割,按给定字符串分割,返回分割后的多个字符串组成的字符串数组。

1 var s="a,bc,d";
2     console.log(s.split(","));//["a", "bc", "d"]
3     s="a1b1c1d1";
4     console.log(s.split("b"));// ["a1", "1c1d1"]
5     console.log(s.split("1"));//["a", "b", "c", "d", ""]

8.join()合并,使用您选择的分隔符将一个数组合并为一个字符串

1  var myList=new Array("jpg","bmp","gif","ico","png");
2     var imgString=myList.join("*");//结果是jpg*bmp*gif*ico*png
3     console.log(imgString);
4     //split()还可以结合正则表达式
5     myString = 'javascript is a good script language';
6     console.log(myString.split(/\s/)); //javascript,is,a,good,script,language
7     //传入\s表示要匹配空格,我们将字符串分割为一个数组,如果你要访问某一个,那么可以明确指出:
8     console.log(myString.split(/\s/)[0]); //javascript
9     console.log(myString.split(/\s/)[3]); //good;

9.字符串大小写转换:

myString="JavaScript";
    myString = myString.toLowerCase();//javascript
    console.log(myString)
    myString = myString.toUpperCase();//JAVASCRIPT
    console.log(myString)

 

posted @ 2017-12-01 18:48  前端极客  阅读(1872)  评论(0编辑  收藏  举报