教你如何解决JS/TS里特定String进行拆分然后遍历各个元素

Posted 华为云开发者社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了教你如何解决JS/TS里特定String进行拆分然后遍历各个元素相关的知识,希望对你有一定的参考价值。

摘要:我们需要先判断特定String里是否包含我们需要的元素,针对这个元素对这个字符串进行拆分,遍历各个元素。

本文分享自华为云社区《​​JavaScript/TypeScript项目里如何对特定String进行拆分然后遍历各个元素​​》,作者:gentle_zhou。

我们可以把题目的这个需求拆分一下,变为如下几步:判断特定String里是否包含我们需要的元素,针对这个元素对这个字符串进行拆分,遍历各个元素。

判断特定String里是否包含我们需要的元素

我们可以用includes()方法来判断我们要找的一个字符串是否包含在我们特定的字符串中,根据情况返回 true 或 false。

注:include()方法是区分大小写的。

该方法的默认语法是:str.includes(searchString[, position])。

searchString是我们要在特定字符串中去搜索的字符串;position则是可选的参数,从当前字符串的哪个索引位置开始搜寻子字符串,默认值为 0。

代码示例:

let question = To be, or not to be, it is a question.;

// 判断question字符串里是否包含我们需要的元素,
console.log(question.includes(,)); // 会打印出true

针对这个元素对这个字符串进行拆分

javascript里,split()方法根据 splitter(分隔符)将字符串拆分为两个或多个子字符串。分隔符可以是单个字符、另一个字符串甚至是一个正则表达式。

将字符串拆分为多个子字符串后,split()方法会将所有子字符串放入一个数组中并返回;它不会对原始字符串进行任何修改。

代码示例:

let question = To be, or not to be, it is a question.;

let quesArr = question.split(,);
console.log(quesArr); // 会打印出["To be", "or not to be", "it is a question."]

console.log(arr[0]); // 打印出"To be"
console.log(arr[2]); // 打印出"it is a question."

遍历各个元素

我们有4种方法去遍历我们刚得到的数组quesArr。

// 方法1
for (let i = 0; i < quesArr.length; ++i)
console.log(quesArr[i]);


// 方法2
for (let i in quesArr)
console.log(quesArr[i]);


// 方法3
for (const v of quesArr)
console.log(v);


// 方法4
quesArr.forEach((v, i) => console.log(v));

这里面,我最喜欢用第一种方法,因为我可以在满足获取到所有元素要求的同时,还可以获取到特定的某个元素。

参考资料

  1. https://www.runoob.com/jsref/jsref-includes.html
  2. https://flexiple.com/javascript-split-string/
  3. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in
  4. ​https://stackoverflow.com/questions/8312459/iterate-through-object-properties​


点击关注,第一时间了解华为云新鲜技术~

以上是关于教你如何解决JS/TS里特定String进行拆分然后遍历各个元素的主要内容,如果未能解决你的问题,请参考以下文章

如何把PDF文件进行拆分,职场达人教你搞定

Linux Shell 找出一个文件里特定符号之前最长的一行 并记录长度

关于Oracle中实现单列拆分成多列的技术应用

骑乐缘教你如何识别骗局

教你用一条SQL搞定跨数据库查询难题

对此和 getcontext js/ts 以及如何绕过它感到困惑