每个开发人员都应该知道的 JavaScript 字符串操作技术

开发 前端
字符串在任何编程语言中都起着至关重要的作用。 正确理解字符串操作技术可以帮助开发人员轻松处理棘手的情况。

在 JavaScript 中,字符串是不可变的,可以帮助我们存储包含字符、数字和 Unicode 的文本。 此外,JavaScript 包含许多用于以各种方式创建和操作字符串的内置函数。

在本文中,我将讨论每个开发人员都应该知道的 JavaScript 字符串操作技术。

1.将字符串拆分成字符数组

作为开发人员,我们面临许多需要将字符串拆分为字符数组的情况。 例如,它是软件工程师面试中被问到最多的问题之一。 在 JavaScript 中,有很多方法可以将字符串拆分为字符数组:

split()

split() 方法将一个字符串分成两个或多个子字符串的有序列表并返回它,具体取决于提供的模式、分隔符或分隔符。

let quote = 'I am Nipuni';

// Split string using the space character

let array1 = quote.split(' ');
console.log(array1);
// ["I", "am", "Nipuni"]

// Split string using an empty string (on each character)

let array2 = quote.split('');
console.log(array2);
// ["I", " ", "a", "m", " ", "N", "i", "p", "u", "n", "i"]

from()

Array 类的 from() 方法是 split() 方法的主要竞争对手。 它允许我们从数据源创建一个数组。 我们还可以使用它从可迭代的字符串中创建一个数组。

let name = "Nipuni Arunodi";

// String to array of chracters

let nameChars = Array.from(name);
console.log(nameChar);
// ["N","i","p","u","n","i"," ","A","r","u","n","o","d","i"]

扩展运算符 (…)

扩展运算符是另一个 JavaScript 功能,可帮助我们从字符串创建数组。

let name = "Nipuni Arunodi";

// Spread out string into an array

let nameChar = [...name];
console.log(nameChar);
// ["N","i","p","u","n","i"," ","A","r","u","n","o","d","i"]

2.检查字符串中的特定序列

与拆分类似,有很多方法可以检查 JavaScript 字符串中的特定序列。 includes() 方法、indexOf() 或正则表达式可用于此类目的。 但是,includes() 是确定字符串是否包含一个字母或一系列字母的最常用方法。 它是专门为此目的而创建的。

const text = "Hi, My name is Nipuni"

console.log(text.includes("Nipuni"));
// true

console.log(text.includes("Arunodi"));
// false

3.检查字符串是否以特定序列开头或结尾

includes() 检查整个字符串中的特定序列。 如果您想确定一个字符串是以特定子字符串开头还是结尾,有两种专门的方法。

string 方法 startsWith() 确定字符串是否以特定子字符串开头。 如果字符串以指定的子字符串开头,它将返回 true。 否则,它返回 false。

const text = "Hi, My name is Nipuni"

console.log(text.startsWith("Hi")); // true

endsWith() 方法允许我们确定一个字符串是否以指定的字符串结尾。

const text = "Hi, My name is Nipuni"

console.log(text.endsWith("Hi")); // false

4. 在多个分隔符上拆分一个字符串

最初,我提到 split() 函数可用于将字符串拆分为数组。 同样,您可以将正则表达式传递给 split() 函数以同时在多个运算符上拆分字符串。

// Split on comma (,) and semicolon (;).

const list = "Car,Bus;Train"

const vehicles= list.split(/[,;]/);
console.log(fruits);
// ["Car", "Bus", "Train"]

5. 反转字符串中的字符

这是入门级开发人员面试的另一个常规问题。 有许多方法可以使用 JavaScript 反转字符串。 例如,我们可以将 split() 方法与 reverse() 和 join() 方法结合起来。

使用这种方法,首先,您需要使用 split() 将字符串拆分为一个数组。 接下来,您使用 reverse() 反转数组,然后最后使用 join() 函数再次加入它。 这是在 JavaScript 中反转字符串的最简单方法。

const word = "Nipuni";
const reversedWord = [...word].reverse().join("");

console.log(reversedWord); // "inupiN"

6.多次复制一个字符串

repeat() 是 JavaScript 中的一个字符串方法,它允许我们重复一个字符串指定的次数。 由于 repeat() 方法是一个字符串对象方法,它必须与 String 类的特定实例一起使用。

// Concatenate "0" 10 times.

const zeroString= "0".repeat(10);
console.log(zeroString); // "0000000000"

7. 将字符串填充到特定长度

您可能希望您的字符串有时具有指定的长度。 如果你的字符串太短,你会想要填补空白,直到它达到所需的长度。 以前,人们经常为此使用库。 相反,您现在可以使用 padStart() 和 padEnd() 方法在开头或结尾填充字符串。

// Add 0 to the beginning until the string has a length of 10.
const string = "001".padStart(10, "0");
console.log(string); // "0000000001"

// Add * to the end until the string has a length of 10.
const string = "99".padEnd(10, "*");
console.log(string ); // "99********"

8. 计算字符串中的字符

您可以轻松地使用 string.length 方法来获取字符串的长度。 它将返回字符串中的字符数。

const word = "Nipuni";
console.log(word.length); // 6

9. 将字符串中的字母转换为大写或小写

您可以使用 toUpperCase() 和 toLowerCase() 方法将字符串中的字符分别转换为大写或小写。 例如,如果您需要将第一个字母大写,您可以使用以下方法:

// Method 1 - To Uppercase
let name = "nipuni";
name = name[0].toUpperCase() + name.substr(1);
console.log(name); // "Nipuni"

// Method 1 - To Lowercase
name = name[0].toLowerCase() + name.substr(1);
console.log(name); // "nipuni"

// Method 2 - To Uppercase
let name = "nipuni";
const characters = [...name];
characters[0] = characters[0].toUpperCase();
name = characters.join("");
console.log(name); // "Nipuni"

// Method 2 - To Lowercase
const characters = [...name];
characters[0] = characters[0].toLowerCase();
name = characters.join("");
console.log(name); // "Nipuni"

10.替换所有出现的字符串

有几种方法可以替换所有出现的字符串。 replace() 方法或带有全局标志的正则表达式是开发人员使用的一些常用方法。

但是,JavaScript 在 2021 年引入了一种名为 replaceAll() 的新方法,可以一次替换所有出现的内容。 但是,目前并非所有浏览器或最新版本的 Node.js 都可以使用这种新方法。

const text = "I like Cars. Cars have 4 wheels"
console.log(text.replace(/Cars/g, "Vans"));
// "I like Vans. Vans have 4 wheels"

console.log(text.replaceAll("Cars", "Vans"));
// "I like Vans. Vans have 4 wheels"

结论

在几乎每一种编程语言中,字符串都是最基本的数据类型之一。 开发人员每天都需要在他们的项目中处理各种字符串操作。

本文讨论了每个开发人员都应该知道的 JavaScript 中一些最常见的字符串操作技术。 我希望这篇文章能帮助你提高你的知识。 感谢您的阅读。

责任编辑:华轩 来源: 七爪网
相关推荐

2013-01-28 10:25:46

开发人员设计技巧

2023-07-11 16:45:32

VS Code开发技巧

2023-03-08 15:13:32

Git工具开发

2020-10-13 18:20:55

TCPHTTP网络协议

2020-09-22 12:19:25

JavaGithub仓库

2021-02-05 12:58:18

开发人员CICD

2020-01-27 16:28:57

开发命令远程服务器

2019-11-25 14:09:34

控制台命令开发

2022-02-21 00:11:24

Java工具开发

2023-02-08 08:32:58

2023-01-12 08:33:06

2022-12-16 08:14:00

2023-10-26 16:56:24

2022-05-09 07:40:16

WebCSS前端

2024-01-24 08:00:00

2022-09-07 07:06:11

编程语言开发人员

2022-09-08 08:07:21

编程语言程序员

2022-08-28 16:10:37

软件开发AI工具

2023-12-20 08:00:00

人工智能工具开发

2022-04-27 08:01:44

JavaThreadRunnable
点赞
收藏

51CTO技术栈公众号