str.indexOf(searchValue[, fromIndex]) 第一个参数是要搜索的子字符串。 第二个是可选参数,表示从指定索引位置开始搜索。如果省略该参数,则默认从字符串的开头开始搜索 查找字符串中指定子字符串的第一个匹配项,并返回字符串的对应索引值。如果没有找到匹配项,则返回-1。
let str = "Hello,world!";
let index = str.indexOf("world");
console.log(index); // 输出 6
let str = "Hello,world!";
let index = str.indexOf("ok");
console.log(index); // 输出 -1
string.includes(searchString, position) 第一个参数是要搜索的字符串, 第二个参数是可选参数,表示在原字符串中开始搜索的位置,默认为 0 判断一个字符串是否包含另一个字符串。返回一个布尔值。
let str = "Hello, World!";
console.log(str.includes("Hello")); // true
console.log(str.includes("world")); // false,注意大小写
console.log(str.includes("o", 5)); // true,从位置5开始搜索
string.startsWith(searchString, position) 第一个参数是要搜索的子字符串, 第二个参数是可选参数,表示在原字符串中开始搜索的位置,默认为 0。 判断一个字符串是否以 指定的子字符串开头。返回一个布尔值。
let str = "Hello,World!";
console.log(str.startsWith("Hello")); // true
console.log(str.startsWith("World")); // false
console.log(str.startsWith("World",6)); // true
console.log(str.startsWith("o", 4)); // true,从位置4开始搜索
str.concat(string) str是要连接的字符串,string是要添加到str末尾的字符串
将两个字符串连接起来,并返回一个新的字符串。 它可以将一个字符串添加到另一个字符串的末尾。
str1 = "Hello"
str2 = "World"
result = str1.concat(str2)
result2 = str1.concat('',str2)
result3= str1.concat(',',str2)
console.log(result);// 输出:HelloWorld
console.log(result2); // 输出:Hello World
console.log(result3);// 输出:Hello,World
将一个字符串分割成一个字符串数组,根据指定的分隔符将原字符串分割成多个子字符串。原始字符串不会被修改,而是根据分隔符进行拆分后,生成一个新的数组。
string.split(separator, maxsplit) 第一个参数是用于分割字符串的分隔符,可以是一个字符或多个字符的组合。 第二个参数是可选参数,用于指定分割的次数。如果不指定maxsplit,会分割所有符合条件的部分。
const str = 'I want to go shopping';
const words = str.split(' '); //空格
console.log(words)
// ['I', 'want', 'to', 'go', 'shopping']
console.log(words[3]); //go
const chars = str.split(''); //空字符串
console.log(chars) //['I', ' ', 'w', 'a', 'n', 't', ' ', 't', 'o', ' ', 'g', 'o', ' ', 's', 'h', 'o', 'p', 'p', 'i', 'n', 'g']
console.log(chars[8]); //o
const str = 'I want to go shopping';
const str2= str.split();
console.log(str2); //['I want to go shopping']
//字符串的 split 和 数组的 join 是两个常用的方法 可以对比记忆
const arr = ['I', 'want', 'to', 'go', 'shopping']
const str = arr.join(' '); // 'I want to go shopping'
字符串中的 指定字符或子字符 串替换为 新的字符或子字符串 string.replace(oldValue, newValue) string是要操作的字符串, oldValue是要替换的字符或子字符串, newValue是要替换成的新字符或子字符串。
let str = "I like apples."
newstr=str.replace("apples", "bananas")
console.log(newstr);//I like bananas.
去除字符串两端的空格
var str = " Hello, World! ";
newstr=str.trim()
console.log(newstr); //"Hello, World!"
trim()方法只会去除字符串首尾的空格,而不会去除字符串中间的空格。 如果想去除字符串中间的空格,可以使用replace()方法来替换空格为空字符串。
/\s+/g 这个正则表达式 是匹配连续的一个或多个空格。 \转义字符,用于匹配特殊字符。 \s表示匹配任何空白字符,包括空格、制表符、换行符等。 +表示匹配前面的元素一次或多次。 g是全局匹配标志,表示匹配字符串中所有的匹配项,不仅仅是第一个。