目录
定义一个字符串来做参考
var str='Hello World';
1.length 属性
可以用来检查字符串的长度
在底层字符串是以字符 数组 的形式保存的,可以将其当作数组进行操作。
console.log(str.length); //11
2.charAt() 方法
可以返回字符串中指定位置的字符。
参数:字符的索引
console.log(str.charAt(0)); //H
3.charCodeAt() 方法
返回在指定的位置的字符的 Unicode 编码。
参数:字符的索引
fromCharCode()
将 Unicode 编码转为字符。
调用:
String.fromCharCode()
这两种方法作为了解,感兴趣的话可以自己上手体验一下
4.concat() 方法
可以用来连接两个或字符串,作用和+一样
参数:要拼接在str后的字符串
console.log(str.concat('你好')); //Hello World你好
5.indexOf() 方法
该方法可以从前往后检索一个字符串中是否含有指定内容,如果字符串中含有该内容,则会返回其第一次出现的索引,如果没有找到指定的内容则返回-1
可以接受两个参数:1.要查找的指定内容
2.指定开始查找的位置(可选)
console.log(str.indexOf('H')); //0(返回的是索引)
6.slice() 方法
可以从字符串中截取指定位置,不改变原字符串
参数:第一个:开始位置索引
第二个:结束位置索引,但返回的不包括结束位置(可选)
可以传负数,表示倒数第几个
console.log(str.slice(1)); //ello World
console.log(str.slice(2,8)); //llo Wo
console.log(str.slice(2,-1)); //llo Worl
7.substring() 方法
提取字符串中两个指定的索引号之间的字符。
参数:第一个:开始位置索引
第二个:结束位置索引,不包括结束位置(可选)
与 slice() 不同的是这个方法不接受负值作为参数,并且他还自动调整参数的位置,如果第二个参数小于第一个,则自动交换。
8.substr()
用来截取字符串
参数:
1.截取开始位置的索引
2.截取的长度
9.toLowerCase()
-把字符串转换为小写。
toUpperCase()
-把字符串转换为大写。
这几种方式都比较简单,下面是正则相关的string方法
1.split() string ==> 数组
-可以将一个字符串拆分为一个数组
-方法中可以传递一个正则表达式作为参数,这样方法将会根据正则表达式去拆分字符串
-要注意的是:这个方法即使不指定全局匹配,也会全部拆分
var str1='1a2b3c4d5e6f7';
var result=str1.split(/[A-z]/);
console.log(result); //"1, 2, 3, 4, 5, 6, 7"
2.search()
-可以搜索字符串中是否含有指定内容
-如果搜索到指定内容则会返回第一次出现的索引,如果没有搜索到返回-1
-它可以接收一个正则表达式作为参数,然后会根据正则表达式去检索字符串
-要注意的是:search只会查找第一个,即使设置全局匹配也没用
var str2='hello abc hello aec afc';
result2=str2.search(/a[bef]c/);
console.log(result2); //6
3.match()
-可以根据正则表达式,从一个字符串中将符合条件的内容提取出来
-默认情况下,我们的match只会找到第一个符合要求的内容,找到以后就停止检索
-我们可以设置正则表达式为全局匹配模式(g),这样就会匹配到所有的内容
-可以为一个正则表达式设置多个匹配模式,且顺序无所谓
-match()会将匹配到的内容封装到一个数组中返回,即使只查询到一个结果
var str3='1a2b3c4d5e6f7';
var result3=str3.match(/[A-z]/); //只提取出一个 a 也是个数组
console.log(result3);
var result4=str3.match(/[A-z]/g); //全局匹配 输出的是一个数组
console.log(result4);
4.replace()
-可以将字符串中指定内容替换为新的内容
参数:
1.被替换的内容,可以接受一个正则表达式作为参数
2.新的内容
-不指定全局匹配的话,默认值会替换第一个
var str4='1a2b3c4d5e6f7A8B9C';
result5=str4.replace(/[A-z]/g,'*');
console.log(result5); //1*2*3*4*5*6*7*8*9*
这就是我们常用的String对象的方法。