摘要:在本教程中,您将学习如何使用 JavaScript 字符串 slice() 方法从字符串中提取子字符串。
JavaScript 字符串 slice() 方法简介
String.prototype.slice() 方法从一个 字符串 中提取一部分,并将其作为子字符串返回。以下展示了 slice() 方法的语法
slice(start, end)slice() 方法有两个可选参数 start 和 end。
start
start 参数是一个从零开始的索引,方法从该索引处开始提取。例如
const str = 'Hello';
const substr = str.slice(3);
console.log({ substr });
Code language: JavaScript (javascript)输出
{ substr: 'lo' }Code language: CSS (css)如果 start 为负数,slice() 方法从 str.length + start 位置开始提取。例如
const str = 'Hello';
const substr = str.slice(-3);
console.log({ substr });Code language: JavaScript (javascript)输出
{ substr: 'llo' }Code language: CSS (css)如果 start 被省略、为 undefined 或不能转换为数字,slice() 方法从字符串开头开始提取。
const str = 'Hello';
const substr = str.slice();
console.log({ substr });
Code language: JavaScript (javascript)输出
{ substr: 'Hello' }Code language: CSS (css)如果 start 大于或等于 字符串的长度,slice() 方法返回一个空字符串。例如
const str = 'Hello';
const substr = str.slice(5);
console.log({ substr });
Code language: JavaScript (javascript)输出
{ substr: '' }Code language: CSS (css)end
end 是一个从零开始的索引,它指定 slice() 方法停止提取的位置的前一个位置。结果字符串不包括 end 索引处的字符。例如
const str = 'Hello';
const substr = str.slice(0, 2);
console.log({ substr });Code language: JavaScript (javascript)输出
{ substr: 'He' }Code language: CSS (css)如果 end 为负数,slice() 方法将其视为 str.length + end。例如
const str = 'Hello';
const substr = str.slice(0, -2);
// str.length 5
// str.length + end = 5 + (-2) = 3
console.log({ substr });Code language: JavaScript (javascript)如果 end 大于 字符串的长度,slice() 方法提取到字符串的末尾。例如
const str = 'Hello';
const substr = str.slice(2, 6);
console.log({ substr });Code language: JavaScript (javascript)输出
{ substr: 'llo' }Code language: CSS (css)如果 end 被省略、为 undefined 或不能转换为数字,slice() 方法也提取到字符串的末尾。例如
const str = 'Hello';
const substr = str.slice(3);
console.log({ substr });Code language: JavaScript (javascript)输出
{ substr: 'lo' }Code language: CSS (css)如果 end 表示的位置在 start 表示的位置之前,slice() 方法返回一个空字符串。例如
const str = 'Hello';
const substr = str.slice(3, 2);
console.log({ substr });Code language: JavaScript (javascript)输出
{ substr: '' }Code language: CSS (css)JavaScript 字符串 slice() 方法实战示例
以下示例使用 slice() 方法获取电子邮件地址的本地部分
let email = '[email protected]'
let localPart = email.slice(0,email.indexOf('@'));
console.log(localPart);Code language: JavaScript (javascript)输出
johnCode language: JavaScript (javascript)工作原理
- 首先,使用
indexOf()方法查找@符号的位置。indexOf()方法的返回值用作slice()方法的第二个参数。 - 然后,使用
slice()方法从字符串开头提取到@符号前一个字符的电子邮件地址的本地部分。
总结
- 使用 JavaScript 字符串
slice()方法从字符串中提取子字符串。
本教程对您有帮助吗?