逐步增大开始搜索的位置,通过 indexOf()遍历了整个字符串。首先取得第一个"e"的位置,然后进入循环,将上一次的位置加 1 再传给 indexOf(),确保搜索到最后一个子字符串实例之后。每个位置都保存在 positions 数组中。
let stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
let positions = [];
let pos = stringValue.indexOf("e");
console.log('e',pos) //3
while (pos > -1) {
positions.push(pos);
pos = stringValue.indexOf("e", pos + 1); //从指定位置开始进行搜索
}
console.log(positions); // [3,24,32,35,52]