操作字符串的几种方法
includes()
检测数组 array 是否包含 某个字符:
let array = ['a', 'b', 'c'];
array.includes('a');
// true
array.includes('d');
// false
indexOf ()
返回字符串中指定文本首次出现的索引(位置),未出现,返回-1 ,可接收两个参数,第一个参数是查找的内容,第二个参数,可传可不穿,从指定位置开始。
let str="abc12345";
str.indexOf(3); // 5
// 从第 2 个字符串开始查找字符 "c" 第一次出现的位置:
str.indexOf('c',2); // 2
// 从第 3 个字符串开始查找字符 "c" 第一次出现的位置:
str.indexOf('c',3); // -1
lastIndexOf ()
返回字符串中指定文本最后一次出现的索引,未出现,返回-1,可接收两个参数,第一个参数是查找的内容,第二个参数,可传可不穿,从开头到指定位置。
let str="abc12345abc";
str.lastIndexOf('c'); // 10
// 从第 1 个字符开始从后向前查找字符串 "c" 最后出现的位置:
str.lastIndexOf('c',1); // -1
// 从第 2 个字符开始从后向前查找字符串 "c" 最后出现的位置:
str.lastIndexOf('c',2); // 2
// 从第 10 个字符开始从后向前查找字符串 "c" 最后出现的位置:
str.lastIndexOf('c',10); // 10
search ()
检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。
如果没有找到任何匹配的子串,则返回 -1。
string.search(value);
let str="abc12345abc";
str.search('c'); // 2
slice()
可提取字符串的某个部分,并以新的字符串返回被提取的部分。
string.slice(start,end);
// 示例
let str="abc12345";
str.slice(3); // 12345
str.slice(1, 3); // bc
substr ()
抽取指定数目的字符:
string.substr(start,length)
let str="abc12345";
str.substr(1,3); // bc1
substring()
用于提取字符串中介于两个指定下标之间的字符。。
string.substring(start,end);
// 示例
let str="abc12345";
str.substring(3); // 12345
str.substring(1, 3); // bc
toUpperCase ()
把字符串转换成大写
let str="Runoob";
str.toUpperCase(); // RUNOOB
toLowerCase ()
把字符串转化成小写
let str="Runoob";
str.toLowerCase(); // runoob
split ()
字符串分割为数组
string.split(separator,limit);
let str="How are you doing today?";
str.split(' '); // ['How', 'are', 'you', 'doing', 'today?']
// 可选。该参数可指定返回的数组的最大长度。
str.split(' ', 4); // ['How', 'are', 'you', 'doing']
replace ()
替换字符串内容
let str="hello world!";
str.replace('hello', 'hi'); // hi world!
str.replace('l', 'a'); // healo world!
// 全局更改使用正则表达式 /g
str.replace(/l/g, 'a'); // heaao worad!
trim ()
删除字符串两端的空白符
let str=" hello world! ";
str.trim(); // "hello world!"