Javascript如何获取字符串的前三个字符

Posted

技术标签:

【中文标题】Javascript如何获取字符串的前三个字符【英文标题】:Javascript How to get first three characters of a string 【发布时间】:2017-02-14 15:38:51 【问题描述】:

这可能与以前的主题重复,但我找不到我真正需要的。

我想获取字符串的前三个字符。例如:

var str = '012123';
console.info(str.substring(0,3));  //012

我想要这个字符串 '012' 的输出,但我不想使用 subString 或类似的东西,因为我需要使用原始字符串来附加更多字符 '45'。使用子字符串它将输出 01245 但我需要的是 01212345。

【问题讨论】:

在这种情况下,当它是一个字符串时,你会得到字符,而不一定是数字。但我很困惑 - 你 are 得到了字符串的前 3 个字符。那你想做什么? 字符串是不可变的。 substring 将返回一个新字符串012,但str 仍将等于012123substring 不会改变str 的内容。 请edit您的问题表明您是如何尝试使用结果的。调用.substring()(或.slice().substr())根本不会改变原始字符串,它会返回一个new 字符串。 str 不会改变,除非你明确地用 str = str.substring(0,3) 覆盖它。 上面的评论是正确的——该方法只是返回你想要的,而不改变原始字符串。因此,您可以将返回值存储在 strFirstThree = str.substring(0,3) 之类的变量中,并且仍然可以完整地访问 str 【参考方案1】:

var str = '012123';
var strFirstThree = str.substring(0,3);

console.log(str); //shows '012123'
console.log(strFirstThree); // shows '012'

现在您可以访问两者。

【讨论】:

【参考方案2】:

slice(begin, end) 适用于字符串和数组。它返回一个字符串,表示原始字符串的子字符串,从beginend(不包括end),其中beginend 表示该字符串中的字符索引。

const string = "0123456789";
console.log(string.slice(0, 2)); // "01"
console.log(string.slice(0, 8)); // "01234567"
console.log(string.slice(3, 7)); // "3456"

另见:

What is the difference between String.slice and String.substring?

【讨论】:

以上是关于Javascript如何获取字符串的前三个字符的主要内容,如果未能解决你的问题,请参考以下文章

如何获取字符串的前五个字符

如何在 Python 中获取字符串的前 2 个字母?

切片字典的值

C语言函数题,编写函数将输入字符串的前三个字母移到最后

C语言函数题,编辑一段函数,将输入的字符串的前三个字母移到后面!

如何在 JavaScript 中获取数组循环的前一个和下一个元素?