字符串的API"/>
字符串的API
1.字符串认知
2.字符串的拼接
3.indexOf
4.replace()替代以及它的全部替换某个元素的方法
5.split();将字符串分割为数组
6.slice(start,end)截取字符串,第二种substr(from,count)截取
7.大小写转换 [str.toUpperCase(),str.toLowerCase()]
8.trim(;)去除字符两边的空白符,不影响原字符串
9.includes();搜索字符是否存在
10.charAt(index)通过索引值,查到指定位置的字符
11.startsWith()和endsWith()判断字符串是否是某个字符开头和结尾的
### 字符串的认知
```js
//字符串有长度,可以用索引值选指定位置的字符,也可以用for循环遍历字符串
var str=`1234lakjdflaksdjf`
console.log(str.length);
console.log(str[0],str[1]);
for (var i = 0; i < str.length; i++) {
console.log(str[i]);
}
```
### 字符串的拼接
```js
var str1='黄',str2='赌',str3='毒'
console.log(str1+str2+str3); //第一种用+直接拼接:黄赌毒(用'+'更简单)
//concat 拼接,连接,字符串
var res =`拒绝`.concat(str1,str2,str3)//第二种用concat拼接:拒绝黄赌毒
console.log(res);
```
### indexOf
```js
//indexOf和lastIndexOf 跟数组的用法一致
//返回索引值,找不到返回-1
//不改变原数组
var str=`撒娇女人最好命`
console.log(str.indexOf(`女人`)); //2
console.log(str.lastIndexOf(`女人`));//2
```
### replace()替代以及它的全部替换某个元素的方法
```js
//replace()替代,替换.有返回值
//返回的是替换之后的字符串,替换多个相同的字符的话,只能替换第一个
//不会改变原来的字符串
var str=`男人得有钱钱钱钱`
var res=str.replace('钱','$')
//var res=str.replace('钱','')替换空元素相当于删除替换位置的元素
console.log(res,str);//男人得有$钱钱钱 男人得有钱钱钱钱
//以下为三种全部替换的方法
//建议使用for循环来一个个替换,或者使用表达式来代替
// /要匹配的字符/加g代表的是全部匹配,然后,加替换
//实现全部替换
//返回替换后的字符串
//不改变原数组
var res=str.replace(/钱/g,'$')
console.log(res);//男人得有$$$$
//replaceAll()存在兼容性问题,不建议使用
var res =str.replaceAll('钱','$')
console.log(res);//男人得有$$$$
```
### split();将字符串分割为数组
```js
//split();将字符串分割为数组
//返回分割之后的数组(转化为数组)
//不会改变原来的字符串
var str='abcdefg'
var res =str.split()
console.log(res,str)//Array [ "abcdefg" ](length为1) abcdefg (第一个数组,第二个字符串)
//split()可以添加参数,代表的以该字符为分割线进行分割字符串为数组
var res =str.split('d')//d作为分割线会消失,如下面一行的结果
console.log(res,str);//Array [ "abc,efg" ](length为1) abcdefg (第一个数组,第二个字符串)
```
### slice(start,end)截取字符串,第二种substr(from,count)截取
```js
//slice(start,end)截取字符串 包括start 不包括end (此处的两个参数都是索引值)
//返回的是截取下来的字符串
//不会改变原来的字符串
var str='abcdefg'
res=str.slice(2,4)
console.log(res,str);//cd abcdefg
res =str.slice(3)//传一个参数,就截取从索引为3开始一直截取到最后
console.log(res);//defg
//第二种截取方法
//substr(from,count)截取,from从哪里开始,count截取几个 (此处的第一个参数是索引值,第二个是数量)
//返回的是截取下来的字符串
//不影响原字符串
var str='abcdefg'
res=str.substr(1,4)
console.log(res,str);//bcde abcdefg
//slice和substring的区别:substring的第一个参数如果为负数的话,还是从0开始,slice如果第一个参数为负数的话,就是从后往前查
res=str.substring(-2)
res1=str.slice(-4)
console.log(res,res1);
```
### 大小写转换 [str.toUpperCase(),str.toLowerCase()]
```js
//大小写转换
//返回的是转换的字符或字符串
//不改变原字符串
var str=`kjahsGgafgAaiWGsg`
//将英文字符转换为大写,不改变原字符串
console.log(str.toUpperCase(),str);//KJAHSGGAFGAAIWGSG kjahsGgafgAaiWGsg
//将英文字符串转换为小写,不改变原字符串
console.log(str.toLowerCase(),str);//kjahsggafgaaiwgsg kjahsGgafgAaiWGsg
```
### trim(;)去除字符两边的空白符,不影响原字符串
```js
//trim(;)去除字符中的空白符,不影响原字符串
var str=` 今天是 周 三`
console.log(str);
console.log(str.trim());//去除字符串两边的空格
console.log(str.trimLeft());//去除字符串左边的空格
console.log(str.trimRight());//去除字符串右边的空格
console.log(str.replace(/ /g,''));//去除全部的空格
```
### includes();搜索字符是否存在
```js
var str=` 今天是 周 三`
//es6 includes();搜索字符是否存在,返回值为true或者false
console.log(str.includes('周三'));false
console.log(str.includes('周 三'));true
```
### charAt(index)
```js
//charAt(index)通过索引值,查到指定位置的字符
var str='hello word'
console.log((str.charAt(4)),str[4]);//o o
```
### startsWith()和endsWith()
```js
//startsWith()和endsWith()判断字符串是否是某个字符开头和结尾的(也能区分大小写),返回值是true,false
console.log(str.startsWith('o'),str.endsWith('d'));//false true
```
更多推荐
字符串的API
发布评论