在JavaScript中,截取字符串可以通过多种方法实现,主要包括 slice()、substring() 和 substr() 方法。以下是对这些方法的详细说明及示例:
- 使用 slice() 方法
函数说明:slice() 方法通过指定的开始和结束位置,提取字符串的某个部分,并以新的字符串返回被提取的部分。
注意事项:
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为0的字符串)。
如果 start 或 end 为负数,那么它将被替换为0。
使用样例:
var str = "0123456789";
console.log(" 从索引为3的字符起一直到结束:", str.slice(3)); // 结果: "3456789"
console.log(" 从索引为3的字符起到索引为5的前一个字符结束:", str.slice(3, 5)); // 结果: "34"
console.log("start 比end大时,自动交换,结果同上:", str.slice(5, 3)); // 结果: "34"
2. 使用 substring() 方法
函数说明:substring() 方法返回一个字符串,该字符串包含源字符串从 indexStart 开始(包括)到 indexEnd 结束(不包括)的所有字符。
注意事项:
如果 indexStart 或 indexEnd 为负数,它将被替换为0。
如果只提供一个参数给这些函数,它将从起始索引开始提取到字符串的末尾。
使用样例:
var str = "Hello, brother";
let substr = str.substring(0, 5); // 结果为 "Hello"
3. 使用 substr() 方法
函数说明:substr 方法用于返回一个从指定位置开始的指定长度的子字符串。
注意事项:
如果 length 为0或负数,将返回一个空字符串。
如果 start 或 length 为负数,那么它将被替换为0。
使用样例:
var str = "0123456789";
console.log(" 从索引为3的字符起截取长度为5的字符串:", str.substr(3, 5)); // 结果: "34567"