一、属性
String字符串
参数 是要储存在String对象中或转换成原始字符串的值
字符也有length长度
//用过构造函数的方式也可以把数字类型转成字符串类型
let str = new String(123);
console.log(str);
//字面量的方式创建一个字符串
let str = '123';
console.log(str.length)//字符串的长度
属性charAt()
返回在指定位置的字符,如果写的索引位置找不到对应的字符会返回一个空字符串
let str = '123';
console.log(str.charAt(1))//返回值是2
属性concat
会返回一个新的拼接后的字符串
let str = '123';
let newstr = str.concat('itty')
console.log(newstr);//返回值是123itty
属性replace()
用于在字符串中用一些字符替换另一些字符串,或替换一个与正则表达式匹配的子串
replace会把第一参数替换成第二个参数里的内容
原来的字符串不会收到影响,会返回一个新的替换后的字符串
let str = 'Hello world';
let a = str.replace('world','kitty');
console.log(a,str)//返回值是 Hello kitty Hello world
练习
1.let str = 'abcdefg';通过索引找到e charAt方法。
2.再写一个字符串aaaa 拼接到str上 并打印出新的字符串
3.把abcd替换成hello,并把替换后的字符串打印出来
代码如下:
let str = 'abcdefg';
console.log(str.charAt(4));//返回值e
console.log(str.concat('aaaa'));//返回值abcdefgaaaa
console.log(str.replace('abcd','hello'));//返回值helloefg
二、方法
split()方法
把一个字符串分割成字符串数组
//数组转字符串
let arr = [1,2,3];
let str = arr.join('-');
console.log(str);//返回值是1-2-3
//字符串转数组
let str = 'hello';
let arr = str.split();
console.log(arr);//返回值是['hello']
//如果arr = str.split(''); 那么返回值就是(5) ['h', 'e', 'l', 'l', 'o']
//如果arr = str.split(',');那么返回值还是['hello']
//如果arr = str.split('e');那么返回值就是['h', 'llo'] 把e作为 分隔符
//如果arr = str.split('l');那么返回值就是(3) ['he', '', 'o'] 因为l有两个所有有一个会变成空字符串
indexOf()方法
返回某个指定的字符串值再字符串中首次出现的位置
let str = 'hello';
console.log(str.indexOf('l'));//返回值是2
lastindexOf()方法
返回某个指定的字符串的最后一个出现的位置
let str = 'hello';
console.log(str.lastindexOf('l'));//返回值是3
match()方法
可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
let str = 'hello';
let a = str.match('o');
//str.match('o')使用match来检索o 可以知道o在字符串内的信息,以数组的形式返回
//比如o所在的索引,o所在的字符串和o的长度
console.log(a);//返回值['o', index: 4, input: 'hello', groups: undefined]
/* /\d+/ 代表匹配一段整体的数字 */
/* /\d/ 代表匹配一个数字 g代表全局
let a = str.match(/\d+/g);
console.log(a);
toLowerCase方法
把字符串转换为小写
let str = 'HELLO';
console.log(str.toLowerCase());//返回值是hello
toUpperCase方法
把字符串转换为大写
let str = 'hello';
console.log(str.toLowerCase());//返回值是HELLO