使用 JavaScript 在特定索引处拆分字符串
要在特定索引处拆分字符串,请使用 slice
方法获取字符串的两个部分,例如 str.slice(0, index)
返回字符串的一部分,但不包括提供的索引,而 str.slice(index)
返回字符串的其余部分。
function split(str, index) {
const result = [str.slice(0, index), str.slice(index)];
return result;
}
const [first, second] = split('abcd', 2);
console.log(first); // 👉️ "ab"
console.log(second); // 👉️ "cd"
我们创建了一个可重用的函数,它将一个字符串和一个索引作为参数。
我们使用 String.slice
方法根据提供的索引拆分字符串。
我们使用以下参数调用该方法:
- start 索引 – 要包含在字符串中的第一个字符的索引
- stop 索引 – 上升到但不包括该索引
第一次调用 slice
方法获取子字符串,但不包括提供的索引。
console.log('abcd'.slice(0, 2)); // 👉️ "ab"
对 slice 方法的第二次调用获取字符串的剩余部分。
console.log('abcd'.slice(2)); // 👉️ "cd"
当传递单个参数时,
slice
方法从提供的索引开始,包括字符到字符串的末尾。
我们的 split
函数返回一个包含两个子字符串的数组。
function split(str, index) {
const result = [str.slice(0, index), str.slice(index)];
return result;
}
const arr = split('abcd', 2);
console.log(arr); // 👉️ ['ab', 'cd']
我们可以使用解构赋值将子字符串赋值给变量。
function split(str, index) {
const result = [str.slice(0, index), str.slice(index)];
return result;
}
// 👇️ destructure array elements and assign to variables
const [first, second] = split('abcd', 2);
console.log(first); // 👉️ "ab"
console.log(second); // 👉️ "cd"
解构赋值语法使我们能够在一条语句中将数组中的值赋给第一个和第二个变量。
如果我们只需执行一次,则无需创建可重用函数。
const str = 'abcd';
const index = 2;
const first = str.slice(0, index);
const second = str.slice(index);
console.log(first); // 👉️ "ab"
console.log(second); // 👉️ "cd"
代码示例实现了相同的结果,但更加硬编码和简化。
如果我们只需要根据提供的索引拆分字符串一次或两次,最好避免过早的抽象。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。