3种实现在JavaScript中提取子字符串的方法_字符串

英文 | 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中是不可变的。所有这些方法都不会更改原始字符串。

最后,谢谢你的阅读。







3种实现在JavaScript中提取子字符串的方法_公众号_02

3种实现在JavaScript中提取子字符串的方法_字符串_03