2026-10-29 23:26:52
JavaScript中,有几个必会的字符串方法,它们能够帮助你高效地处理和操作字符串。以下是这些方法的详细解释:
获取字符串长度
使用 .length 属性。
示例:const str = 'hello'; str.length; // 输出结果:5
获取字符串指定位置的值
使用 .charAt(index) 方法或方括号索引 str[index](现代浏览器支持)。
示例:const str = 'hello'; str.charAt(1); // 输出结果:e;str[1]; // 输出结果:e
注意:索引超出范围时,.charAt(index) 返回空字符串 '',而 str[index] 返回 undefined。
检索字符串是否包含特定序列
使用 .indexOf(searchValue, fromIndex) 方法。
示例:let str = "abcdefgabc"; console.log(str.indexOf("a")); // 输出结果:0
使用 .includes(searchValue, fromIndex) 方法。
示例:str.includes('o'); // 输出结果:true
使用 .startsWith(searchValue, position) 和 .endsWith(searchValue, length) 方法。
示例:str.startsWith('Hello'); // 输出结果:true;str.endsWith('!'); // 输出结果:true
字符串分割成数组
使用 .split(separator, limit) 方法。
示例:let str = "abcdef"; str.split("c"); // 输出结果:["ab", "def"]
截取字符串
使用 .slice(start, end) 方法。
示例:let str = "abcdefg"; str.slice(1, 6); // 输出结果:"bcdef"
注意:如果 start 或 end 为负数,则从字符串末尾开始计算位置。
字符串模式匹配
使用 .replace(searchValue, newValue) 方法。
示例:let str = "abcdef"; str.replace("c", "z"); // 输出结果:abzdef
使用 .match(regexp) 方法。
示例:let str = "abcdcecf"; console.log(str.match(/c/g)); // ['c','c','c']
使用 .search(regexp) 方法。
示例:str.search(/bcd/); // 输出结果:1
移除字符串收尾空白符
使用 .trim() 方法移除字符串首尾空白符。
使用 .trimStart() 和 .trimEnd() 方法分别移除字符串开头和结尾的空白符。
示例:let str = " abcdef "; str.trim(); // 输出结果:"abcdef"
重复一个字符串
使用 .repeat(count) 方法。
示例:'hello'.repeat(2); // 输出结果:"hellohello"
字符串转为数字
使用 parseInt(string, radix) 方法。
示例:parseInt("10"); // 输出结果:10
注意:radix 参数是可选的,表示要解析的数字的基数(2-36)。如果省略该参数或其值为 0,则数字将以 10 为基数来解析。如果它以 “0x” 或者 “0X” 开头,将以 16 为基数。如果它以 “0” 开头,将以 8 为基数。如果它不能被转换成数字,将返回 NaN。
补齐字符串长度
使用 .padStart(targetLength, padString) 方法在字符串头部补全。
示例:'x'.padStart(5, 'ab'); // 'ababx'
使用 .padEnd(targetLength, padString) 方法在字符串尾部补全。
示例:'x'.padEnd(5, 'ab'); // 'xabab'
这些方法涵盖了字符串处理中的大部分常见需求,掌握它们将大大提高你在JavaScript中处理字符串的效率。