substring()
方法返回字符串中从起始索引到结束索引(不包含)的指定部分。
示例
const message = "JavaScript is fun.";
// get the substring starting from index 0 to 10
let result = message.substring(0, 10);
console.log(result);
// Output: JavaScript
substring() 语法
substring()
方法的语法是:
str.substring(indexStart, indexEnd)
其中,str 是一个字符串。
substring() 参数
substring()
方法接受:
- indexStart - 要包含在返回的子字符串中的第一个字符的索引。
- indexEnd (可选) - 提取停止前的索引。(不包含)如果省略,则提取到字符串末尾。
注意事项
- 任何 小于 0 的参数值 都被视为 0。
- 任何 大于 str.length 的参数值 都被视为 str.length。
- 任何
NaN
参数值都被视为 0。 - 如果
indexStart
大于indexEnd
,则两个参数会被交换,即str.substring(a, b)
将会变成str.substring(b, a)
。
substring() 返回值
- 返回一个新字符串,其中包含给定字符串的指定部分。
注意:substring()
不会更改原始字符串。
示例 1:使用 substring
let string = "Programiz JavaScript Tutorials";
// first character
substr1 = string.substring(0, 1);
console.log(substr1); // P
// if start > end, they are swapped
substr2 = string.substring(1, 0);
console.log(substr2); // P
// From 11th to last character
substr3 = string.substring(10);
console.log(substr3); // JavaScript Tutorials
// the extreme values are 0 and str.length
// same as string.substring(0)
substr4 = string.substring(-44, 90);
console.log(substr4); // Programiz JavaScript Tutorials
// indexEnd is exclusive
substr5 = string.substring(0, string.length - 1);
console.log(substr5); // Programiz JavaScript Tutorial
输出
P P JavaScript Tutorials Programiz JavaScript Tutorials Programiz JavaScript Tutorial
示例 2:替换字符串中的子字符串
// Replaces old characters with new characters in a string
function replaceString(oldChars, newChars, string) {
for (let i = 0; i < string.length; ++i) {
if (string.substring(i, i + oldChars.length) == oldChars) {
string =
string.substring(0, i) +
newChars +
string.substring(i + oldChars.length, string.length);
}
}
return string;
}
const string = "Java Tutorials";
let newString = replaceString("Java", "JavaScript", string);
console.log(newString); // JavaScript Tutorials
输出
JavaScript Tutorials
另请阅读