JavaScript 中字符串的常用方法非常丰富,这些方法使得对字符串的处理变得灵活和高效。以下是一些常用的字符串方法及其使用方法:
1. 访问字符串中的字符
- charAt(index): 获取指定索引位置的字符。索引从 0 开始。如果索引超出范围,则返回空字符串。
var str = 'hello';
console.log(str.charAt(1)); // 输出: e
2. 字符串大小写转换
- toLowerCase(): 将字符串中的所有字母转换为小写。
var str = 'Hello World';
console.log(str.toLowerCase()); // 输出: hello world
- toUpperCase(): 将字符串中的所有字母转换为大写。
var str = 'hello world';
console.log(str.toUpperCase()); // 输出: HELLO WORLD
3. 字符串的截取与分割
- substring(start, end): 截取字符串中从
start
到end-1
的部分。如果end
被省略,则截取到字符串末尾。
var str = 'hello world';
console.log(str.substring(0, 5)); // 输出: hello
- slice(start, end): 与
substring
类似,但可以接受负值索引,表示从字符串末尾开始计算。
var str = 'hello world';
console.log(str.slice(6, 11)); // 输出: world
console.log(str.slice(-6)); // 输出: world
- split(separator): 使用指定的分隔符将字符串分割成数组。如果分隔符为空字符串,则分割成单个字符的数组。
var str = 'apple,banana,orange';
console.log(str.split(',')); // 输出: ["apple", "banana", "orange"]
4. 字符串的查找与替换
- indexOf(searchValue, fromIndex): 查找字符串中
searchValue
首次出现的位置,从fromIndex
开始。如果没有找到,则返回 -1。
var str = 'hello world';
console.log(str.indexOf('world')); // 输出: 6
- lastIndexOf(searchValue, fromIndex): 查找字符串中
searchValue
最后一次出现的位置,从fromIndex
开始向后搜索。
var str = 'hello world, hello universe';
console.log(str.lastIndexOf('hello')); // 输出: 13
- replace(searchValue, replaceValue): 将字符串中的
searchValue
替换为replaceValue
。只替换第一个匹配的项。
var str = 'hello world';
console.log(str.replace('world', 'universe')); // 输出: hello universe
5. 字符串的修改与连接
- concat(…strings): 连接两个或多个字符串。
var str1 = 'hello';
var str2 = 'world';
console.log(str1.concat(' ', str2)); // 输出: hello world
- trim(): 去除字符串两端的空白字符。
var str = ' hello world ';
console.log(str.trim()); // 输出: hello world
6. 字符串的重复与检查
- repeat(count): 将字符串重复
count
次。
var str = 'hello';
console.log(str.repeat(3)); // 输出: hellohellohello
- includes(searchString, position): 检查字符串是否包含
searchString
。如果包含,则返回true
;否则,返回false
。
var str = 'hello world';
console.log(str.includes('world')); // 输出: true
- startsWith(searchString, position): 检查字符串是否以
searchString
开头。
var str = 'hello world';
console.log(str.startsWith('hello')); // 输出: true
- endsWith(searchString, position): 检查字符串是否以
searchString
结尾。
var str = 'hello world';
console.log(str.endsWith('world')); // 输出: true
7当然,我会继续介绍JavaScript中字符串的常用方法:
7. 字符串的匹配与搜索
- match(regexp): 在字符串中查找与正则表达式
regexp
匹配的结果。如果找到匹配项,则返回一个数组;否则,返回null
。
var str = 'hello world';
console.log(str.match(/o/g)); // 输出: ["o", "o"]
8. 字符串的编码与解码
- charCodeAt(index): 返回在指定索引处的字符的 Unicode 编码。
var str = 'hello';
console.log(str.charCodeAt(0)); // 输出: 104('h' 的 Unicode 编码)
- fromCharCode(…codeUnits): 接受一个或多个 Unicode 编码值,并返回一个字符串。
console.log(String.fromCharCode(104, 101, 108, 108, 111)); // 输出: hello
9. 字符串的模板化
- 模板字符串(Template Strings): 使用反引号(`
\``)包裹的字符串,可以包含占位符
${…}`。
var name = 'world';
console.log(`hello ${name}!`); // 输出: hello world!
10. 其他字符串方法
- padStart(targetLength, padString): 在当前字符串的开始填充指定的
padString
,直到达到目标长度targetLength
。
var str = '5';
console.log(str.padStart(10, '0')); // 输出: "0000000005"
- padEnd(targetLength, padString): 在当前字符串的末尾填充指定的
padString
,直到达到目标长度targetLength
。
var str = '5';
console.log(str.padEnd(10, '0')); // 输出: "5000000000"
注意事项
- 大多数字符串方法都不会改变原字符串,而是返回一个新的字符串。
-
substr()
方法已经被弃用,建议使用substring()
或slice()
方法来代替。 - 字符串的索引是从 0 开始的,这意味着第一个字符的索引是 0,第二个字符的索引是 1,依此类推。
- 当使用负数索引时,
slice()
方法会从字符串的末尾开始计算位置,而substring()
方法会将负数索引视为 0。
通过这些方法,你可以轻松地对 JavaScript 中的字符串进行各种操作,包括访问、修改、查找、替换、连接、分割等。