3种实现在JavaScript中提取子字符串的方法
共 1662字,需浏览 4分钟
·
2021-07-07 17:18
英文 | https://medium.com/programming-essentials/how-to-extract-a-substring-in-javascript-e0d521cb030f
翻译 | 小爱
有3种方法可以提取JavaScript中字符串的一部分,也许你觉得这个方法太多了。你只需要一个就足够了。
下面我们就开始吧。
01、substr
该substr(start, length)方法提取字符串的一部分,从指定的索引处开始,并返回指定数量的字符。
const quote = "Winter is coming";
const part1 = quote.substr(0, 6);
//Winter
const part2 = quote.substr(10, 6);
//coming
请注意,第一个字符在index处为0。
该start指数是必需的,但 length是可选的。如果省略,它将提取字符串的其余部分。
const quote = "Winter is coming";
const part = quote.substr(6);
// is coming
02、substring
该substring(start, end)方法返回start和end索引之间的字符串部分。它从start索引处的字符开始到结束,但不包括索引处的字符end。
const quote = "We Stand Together";
const part = quote.substring(3, 8);
// Stand
如果end省略索引,它将提取到字符串的末尾。
const quote = "We Stand Together";
const part = quote.substring(3);
// Stand Together
与indexOf方法结合使用,效果会更好。
该indexOf方法返回第一个索引,在该索引处可以找到给定的字符串文本,否则返回-1。
考虑以下代码在第一个逗号之后提取文本。
const quote = "You know nothing, Jon Snow";
const commaIndex = quote.indexOf(",");
const part = quote.substring(commaIndex + 1);
//" Jon Snow"
03、slice
该slice(start, end)方法返回start和end索引之间的字符串部分。slice像substring。
const quote = "We Stand Together";
const part = quote.slice(3, 8);
// Stand
如果end省略索引,它将提取到字符串的末尾。
const quote = "We Stand Together";
const part = quote.slice(3);
// Stand Together
slice基本上是为了模仿阵列接口而添加的。(数组中有一个同名的方法在两个索引之间提取其一部分,并返回一个新的浅表副本)。
字符串在JavaScript中是不可变的。所有这些方法都不会更改原始字符串。
最后,谢谢你的阅读。