js查找某个字符串出现了多少次, 快速掌握

js查找某个字符串出现了多少次, 快速掌握

如何查找某个字符串出现了多少次,这是面试中经常被问到的。

话不多说,直接code 一把梭

1. 通过for循环遍历查找


/**
* str { String } 完整字符串
* tatget { String } 目标对象,要查找的字符串
*/
function searchStrEach(str, target) {
   let sum = 0
   for (let key of str) {
      if (key == target) {
         sum ++
      }
   }
   return sum;
 }
 searchStrEach('sdsasads', 'd')

2. 通过数组方法split分割查找


/**
* str { String } 完整字符串
* tatget { String } 目标对象,要查找的字符串
*/
function searchStrSplit(str, target) {
   return str.split(target).length - 1
}
searchStrSplit('dsfsdfdsfdsfs', 'd')

3. 通过字符串方法indexOf查找

如果不了解indexOf 第二个参数,查看该教程 文档

/**
* str { String } 完整字符串
* tatget { String } 目标对象,要查找的字符串
*/
function fn2(str, target) {
   let index = str.indexOf(target)
   let sum = 0;
   while(index > -1) {
      index = str.indexOf(target, index + 1)
      sum ++
   }
   return sum
}
searchStrIndexOf('sdffgfdgw', 'f')

文章如有错误,请各位大佬指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值