本文分享自华为云社区《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进行拆分然后遍历各个元素相关推荐

  1. 为啥JS/TS里都会有“use strict“

    本文分享自华为云社区<JS/TS里的"use strict"严格模式是什么?>,作者: gentle_zhou. 在日常JS/TS项目开发过程中,经常会在文件开头看到& ...

  2. 一个html中同时引入js和ts,《使用require在ts里引入js》

    在Money.vue组件里,我们使用localStorage,在用户输入完一系列选择以后,如选择了什么标签,写了什么备注,支出还是收入,以及记账金额,点击ok按钮的时候,把这些数据收集到record对 ...

  3. 计算机无法删除u盘里东西,u盘里的东西删不掉怎么办?教您解决u盘里的东西删不掉...

    相信很多使用电脑比较频繁的朋友都会经常使用到U盘,在使用移动存储工具的时候,往往会因为自己日常操作不规范,而导致移动存储设备出现各种各样的问题.比如电脑无法识别设备,无法格式化等.如果我们遇到u盘的文 ...

  4. 启动PE系统找不到计算机硬盘,PE里找不到硬盘,小编教你怎么解决PE里找不到硬盘...

    对于在重装系统找不到一些部件的事情,好像一直有出现过.但小伙伴们,你们是怎么解决的呢?小编我这里也有解决方法呢,想要知道的小伙伴们,就赶紧和小编一起接着往下看吧. 现在安装系统的工具有很多,例如小白一 ...

  5. pe里怎么看不到计算机硬盘,PE里找不到硬盘,详细教您怎么解决PE里找不到硬盘...

    现在安装系统的工具有很多,例如小白一键重装.PE重装电脑等.但是小编发现一个问题,就是使用PE系统的时候会出现一个问题,那就是在PE中找不到硬盘在哪.那这是应该怎么解决呢?那接下来小编就告诉你们怎么解 ...

  6. python取特定年份的数据_python,_怎样用python提取不同股票csv里特定时间段的数据,python - phpStudy...

    怎样用python提取不同股票csv里特定时间段的数据 我有几千只股票的csv数据,需要算所有股票在特定时间段内的收益率. 但是数据里的日期信息并不统一,有的csv到2011年就没有了之后的信息了,有 ...

  7. firefox如何载入json文件_如何去解决JS跨域问题 怎么能学好Web前端开发

    如何去解决JS跨域问题?怎么能学好Web前端开发?JavaScript跨域是指通过JS在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过JS获取页面中不同域的框架中(if ...

  8. [重要!] SAP Spartacus加载网络请求的entity状态切换,统一在loader.reducer.ts里完成

    page-data.reducer.ts: 这里可以监控加载成功的CMS page: ngrx-store.js: loader.reducer.ts里,将entity的loading置为false: ...

  9. SAP Spartacus user-addresses.effect.ts里发送地址加载成功的action,会触发我们自己的reducer

    在user-addresses.effect.ts里,加载成功user address信息后,发送一个UserActions.LoadUserAddressesSuccess: ngrx-effect ...

最新文章

  1. Spring MVC-ContextLoaderListener和DispatcherServlet
  2. Intellij IDEA 竟然把 Java8 的数据流问题这么完美的解决掉了!
  3. mysql企业版多少钱_企业资质代办多少钱
  4. class与case class的区别(转载)
  5. Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据 二)...
  6. 程序猿 自己所擅长的还是码代码 请远离 业务。
  7. linux 下which、whereis、locate、find文件查找命令的区别[ZT]
  8. wordpresd免登录发布接口php_实现wordpress的ajax接口请求学会admin-ajax.php的利用
  9. CodeProject终于迁到Asp.Net了
  10. php 银行卡二要素验证
  11. 电磁波谱与通讯技术,5G特点
  12. 用matlab实现“太阳-地球-月亮运行示意图”动画
  13. 5. Podspec 文件分析
  14. 层次softmax (hierarchical softmax)理解
  15. HTML图片的路径问题
  16. 手机ufs2.1测试软件,都UFS 2.1了 你还不赶紧把TF卡扔掉!-手机评测
  17. Sealed与Final
  18. word修改题注样式图x 为图x.x(wps可用
  19. Bad owner or permissions on .ssh/config的解决
  20. MEMS VOA光衰减器的工作原理

热门文章

  1. Leetcode 335. 路径交叉(Self Crossing)
  2. 下载Bootstrap3
  3. 视觉SLAM笔记(61) 单目稠密建图
  4. java 网页通讯_Vue+Java 通过websocket实现服务器与客户端双向通信操作
  5. redis图形化界面_Redis(六)- Client
  6. 解决IE下CSS因 Mime 类型不匹配而被忽略的问题
  7. python-opencv学习第二章
  8. 2016级算法第六次上机-D.AlvinZH的学霸养成记V
  9. Android 开发笔记___Activity的生命周期
  10. [剑指Offer] 42.和为S的两个数字