【JS】字符串方法速览
length属性
// length 属性示例
let str = "Hello, world!";
// 获取字符串的长度
let length = str.length;
console.log(length); // 输出:13
indexof()和lastIndexOf()
indexOf()
方法返回字符串中指定文本首次出现的索引(位置)lastIndexOf()
方法返回指定文本在字符串中最后一次出现的索引,从尾到头检索。- 两者都支持第二个参数作为检索起始位置,如果未找到文本, 均返回 -1
// indexOf() 示例
let str = "Hello, world!";
let index = str.indexOf("world");
console.log(index); // 输出:7,因为 "world" 首次出现在索引 7 的位置
// 如果未找到文本,返回 -1
let indexNotFound = str.indexOf("moon");
console.log(indexNotFound); // 输出:-1,因为 "moon" 在字符串中不存在
// 使用第二个参数作为检索起始位置
let indexFrom5 = str.indexOf("o", 5);
console.log(indexFrom5); // 输出:7,从索引 5 开始检索,找到第一个 "o" 在索引 7
// lastIndexOf() 示例
let lastIndex = str.lastIndexOf("l");
console.log(lastIndex); // 输出:9,因为 "l" 最后一次出现在索引 9 的位置
// 如果未找到文本,返回 -1
let lastIndexNotFound = str.lastIndexOf("moon");
console.log(lastIndexNotFound); // 输出:-1,因为 "moon" 在字符串中不存在
// 使用第二个参数作为检索起始位置
let lastIndexFrom5 = str.lastIndexOf("l", 5);
console.log(lastIndexFrom5); // 输出:8,从索引 5 开始检索,找到最后一个 "l" 在索引 8
search()
search()
方法搜索特定值的字符串,并返回匹配的位置
和indexOf()区别:
- search() 方法无法设置第二个开始位置参数。
- indexOf() 方法无法设置更强大的搜索值(正则表达式)。
// search() 示例
let str = "Hello, world!";
// 搜索小写的 'world'
let index = str.search(/world/i);
console.log(index); // 输出:7,因为 "world" 出现在索引 7 的位置,并且 'i' 标志使搜索不区分大小写
slice()
slice(
开始位置,结束位置)
提取字符串的某个部分并在新字符串中返回被提取的部分- 如果某个参数为负,则从字符串的结尾开始计数
- 如果省略第二个参数,则该方法将裁剪字符串的剩余部分
// slice() 示例
let str = "Hello, world!";
// 提取从索引 7 到索引 12(不包括索引 12)的子字符串
let part1 = str.slice(7, 12);
console.log(part1); // 输出:world
substr()和substring()
- 都
类似slice(),区别在于
substring()不接受负索引,substr()第二个参数规定被提取的长度
- 省略第二个参数,都将裁剪字符串的剩余部分。
// substring() 示例
let str = "Hello, world!";
// 提取从索引 7 到索引 12(不包括索引 12)的子字符串
let part1 = str.substring(7, 12);
console.log(part1); // 输出:world
// substr() 示例
// 提取从索引 7 开始的子字符串,长度为 5 个字符
let part2 = str.substr(7, 5);
console.log(part2); // 输出:world
charAt()
返回字符串中指定下标(位置)的字符串
// charAt() 示例
let str = "Hello, world!";
// 获取索引 7 处的字符
let char = str.charAt(7);
console.log(char); // 输出:w
charCodeAt()
返回字符串中指定索引的字符 unicode 编码
// charCodeAt() 示例
let str = "Hello, world!";
// 获取索引 7 处的字符编码
let charCode = str.charCodeAt(7);
console.log(charCode); // 输出:119,这是字符 'w' 的 Unicode 编码
replace()替换字符串内容
- replace() 方法用另一个值替换在字符串中指定的值,只替换首个匹配
- 不会改变调用它的字符串,返回的是新字符串
// replace() 示例
let str = "Hello, world!";
// 替换第一个匹配的 "world" 为 "JavaScript"
let newStr1 = str.replace("world", "JavaScript");
console.log(newStr1); // 输出:Hello, JavaScript!
toUpperCase()和toLowerCase()大小写转换
let str = "Hello, World!";
// 将整个字符串转换为大写
let upperCaseStr = str.toUpperCase();
console.log(upperCaseStr); // 输出:HELLO, WORLD!
// 将整个字符串转换为小写
let lowerCaseStr = str.toLowerCase();
console.log(lowerCaseStr); // 输出:hello, world!
concat()连接字符串
// concat() 示例
let str1 = "Hello, ";
let str2 = "world!";
let str3 = " Welcome to the universe.";
// 连接三个字符串
let concatenatedStr = str1.concat(str2, str3);
console.log(concatenatedStr); // 输出:Hello, world! Welcome to the universe.
trim()去除空白
// trim() 示例
let str = " Hello, world! ";
// 去除字符串两端的空白字符
let trimmedStr = str.trim();
console.log(trimmedStr); // 输出:Hello, world!
split()字符串转数组
// split() 示例
let str = "Hello, world!";
// 使用逗号作为分隔符分割字符串
let parts1 = str.split(",");
console.log(parts1); // 输出:["Hello", " world!"]
未完,有空再更~~~~~~~