var str = '苹果-香蕉-橘子-西瓜-山竹-苹果-桃子-哈密瓜-草莓-葡萄'
var subStr = '苹果'
方法一用indexof indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
语法:stringObject.indexOf(searchvalue,fromindex)
- subStr:规定需检索的字符串值。
- fromindex:从 fromIndex 处进行搜索。如果未找到该值,则返回 -1
var p = str.indexOf(subStr)
var arr = []
while(p>-1){
arr.push(p)
p = str.indexOf(subStr,p+1)
}
方法2
function foo(str, subStr) {
const result = [];
for (let index = 0; index < str.length; index++) {
const temp = str.slice(index, index + subStr.length)
if (temp === subStr) {
result.push(index)
}
}
return result;
}
console.log(foo(str, subStr)) // [0,15]