目录
2、lastIndexOf(参数1 ,参数2) ;返回字符串中子字符串最后出现的位置
6、includes(子串) 查找字符串中是否包含指定的字符串
7、match(参数)在字符串内检索指定的值(例题中有正则表达式)
创建字符串方法
第一种方法:构造函数来创建String对象
var str= new String()
var str = new String("abcdefg");
console.log(str);
console.log(str.length);
console.log(str[0]);//索引号 取值范围[0,str.length-1]
for(var i = 0;i <= str.length - 1;i++){
console.log(i+str[i]);
}
第二种方法:字面量方法来创建字符串对象
var str="hello";
console.log(str.length)
console.log(str[0]);通过索引号下标来获取(索引号=长度-1)
字符串转义符
类似于HTML里面的特殊字符,字符串中也有特殊字符,我们称之为转义符。
转义符都是\开头的,常用的转义符及其说明如下:
转义符 | 解释说明 |
---|---|
\n | 换行符,n是newline的意思 |
\ | 斜杠\ |
\ ’ | 单引号 |
* | 双引号 |
\t | tab 缩进 |
\b | 空格,B是blank的意思 |
字符串长度的检测
字符串是由若干字符组成的,这些字符的数量就是字符串的长度,通过字符串的length属性可以获取整个字符串的长度。
<script>
//检测获取字符串的长度 length(length中包含空格)
var str = 'my name is andy';
console.log(str.length); //显示 15
</script>
转换字符串方法
- toString
- String
- 字符串拼接
//1.把数字型转换为字符串型 toString() 变量.toString() var num = 10; var str = num.toString(); console.log(str); //2.强制转换 console.log(String(num)); //3.字符串拼接 console.log(1 + 'string');
- toString() 和 String() 使用方式不一样
- 三种转换方式,第三种加号拼接字符串转换方式更常用,这一方式也称为隐式类型转换
查找字符串
1、indexOf()
strObj.indexOf(参数1,参数2) 从参数2的位置开始查找参数1在整个字符串中第一次出现的位置
参数1:必需 查找的子串
参数2:可选 开始查找的位置 若省略,默认从0开始查找
返回值:整数 若查找到该字串返回该字串在整个字符串中第一次出现的位置,若查找不到返回-1
var str = "hello world"; console.log(str.indexOf("o"));//4 第一个o所在位置 console.log(str.indexOf("o",5));//7 console.log(str.indexOf("a"));//-1 找不到
注意:indexOf查找字符串中的空字符串会返回0,并不是-1,即使字符串中没有空字符串
let name = "大脸胖柴"; console.log(name.indexOf("")); // 0
2、lastIndexOf(参数1 ,参数2) ;返回字符串中子字符串最后出现的位置
详解:
- 从0开始到参数2位置 查找参数1子串在整个字符串中最后一次出现的位置
- 参数1 :必需 查找的字符串
- 参数2 :可选 结束查找的位置
- 返回值:如果找到返回子串的位置 如果找不到返回-1
3、search 检索字符串中指定的子字符串
详解:
- search 用于检索字符串中指定的子字符串,或检索与正则表达式想匹配的子字符串
- 返回值:如果能查找到返回 位置,若找不到 返回-1
- 可匹配数字
4、charAt() 返回指定位置的字符
str.charAt(索引号) 根据索引位置查找字符
返回指定位置的字符。字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length-1 之间,该方法将返回一个空字符串。
var str = "Happy Day"; for(var i = 0; i <= str.length-1; i++){ //console.log(str.charAt(i)); //console.log(str[i]); //console.log(str.substr(i,1)); console.log(str.substring(i,i+1)); }
5、 charCodeAt()
strObj.charCodeAt(索引号) 根据索引查找字符对应的编码
返回一个整数,代表指定位置上字符的 Unicode 编码 (返回值是 0 - 65535 之间的整数) 参数:必需。表示字符串中某个位置的数字,即字符在字符串中的下标。
var str = "abz"; console.log(str.charCodeAt(0));//97 根据索引查找字符编码 console.log(str.charCodeAt(1));//98 console.log(str.charCodeAt(2));//122
6、includes(子串) 查找字符串中是否包含指定的字符串
7、match(参数)在字符串内检索指定的值(例题中有正则表达式)
match(参数)在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
参数:子串或正则表达式, 匹配多次 正则表达式 添加g表示全局查找 添加i表示忽略大小写
返回值:匹配结果构成数组
匹配不到返回null
实例:
var str = "I love js,I Love code."; var str = "小胡:20;小张:18;大李:24"; console.log(str.match("love")); console.log(str.match(/love/gi)); //g:global全局 i:ignorecase忽略大小写 console.log(str.match(/\d{2}/g));// (/\d{2}/g)表示查找字符串中所有数字 2应该表示为两个数为一组 // strObj.match(参数) // 参数:正则表达式 // 返回值:返回满足匹配正则结果的数组 或 null(匹配失败)
字符串文字替换
replace(str,newstr) 进行文字替换,
用newstr替换str
如果想要全部替换需要通过正则表达式 用newstr替换(/str/g)
// 字符串替换 var th = "I love javascript"; th = th.replace(/love/g, "喜欢"); console.log(th);//I 喜欢 javascript
截取字符串
方法一
substr(参数1,参数2)
str.substr(参数1,参数2) 从参数1位置开始截取长度为参数2的字串
参数1:必需 开始截取的位置 可以为负值 -1代表最后一个字符 -2代表倒是第二个字符
参数2:可选 截取长度 若省略 截取到整个字符串的末尾
返回值:截取的子串
var str = "I love JavaScript"; console.log(str.substr(2)); console.log(str.substr(2,4)); console.log(str.substr(-6));
方法二
substring(startPos,stopPos) 用来截取字符串
第一个值必需,一个非负的整数,截取开始的位置
第二个值可选,一个非负的整数,结束位置,如果省略该参数那么返回的子串会一直到字符串对象的结尾
注意:
1,截取时,包含参数1的位置,不包含参数2 截取的长度=参数2-参数1
2,如果参数1==参数2 截取到的是一个长度为0的空串
3,如果参数1>参数2,截取前会先交换两者位置,再进行截取
var str = "I love JavaScript"; console.log(str.substring(2)); console.log(str.substring(2,6));//love 结束截至的位置,不包含结束,包含开始 console.log(str.substring(2,2));//空串 console.log(str.substring(6,2));//love 如果 参数1 比 参数2 大,那么该方法在提取子串之前会先交换这两个参数
方法三
slice() 用来截取字符串 可以用在数组上方也可以用在字符串上方
参数1 必选 开始截取的位置(包含)
参数2 可选 结束截取的位置(不包含),若省略截取到尾部
包含开始不包含结束
var str = "I love JavaScript"; console.log(str.slice(2)); console.log(str.slice(2,6));//不包含结束位置 console.log(str.slice(-2,-6));//空串 console.log(str.slice(6,2));//空串 不会交换位置 console.log(str.slice(-6,-2));//第一个参数 < 第二个参数
拼接字符串join()
join() 方法将数组作为字符串返回。
元素将由指定的分隔符分隔。默认分隔符是逗号 (,)。
注释:join() 方法不会改变原始数组。
语法:
array.join(分隔符) // 分隔符可省略
分割字符串
split(参数1,参数2) 分割字符串
参数1:分隔符
参数2:可选分割分数
返回值:数组
如果参数1,参数2什么都不写,写一个空串("")即可每个字符串都分开
语法:
array.split(分割符);
删除字符串空格 .trim()
var uname = prompt("请输入用户名"); // uname = uname.trim();//删除左、右空格 // uname = uname.trimLeft();//删除左侧空格 uname = uname.trimRight(); //删除右侧空格 console.log(uname);
字符串转换大写 .toUpperCase()
<p>{{num.toUpperCase()}}</p> // ABOUT
data() {
return {
num:"about"
};
},
字符串转换小写.toLowerCase()
<p>{{num.toLowerCase()}}</p> // about
data() {
return {
num:"ABOUT"
};
},