js从数组a中查找所有元素值x,返回匹配的索引数组

从数组a中查找所有元素值x,返回匹配的索引数组
//写法一:
 function findAll(a=[],x){
    let results=[];
    for(let i=0;i<a.length;i++){
      i=a.indexOf(x,i);
      if(i===-1) break;
      results.push(i)
   }
   return results;
  }

//写法二:
function findAll(a=[],x){
    let results=[];
    a.forEach((v,i,a)=>{
      if(v===x){
        results.push(i)
      }
    })
   return results;
  }

//写法三:
 function findAll(a=[],x){
    let results=[],len=a.length,pos=0;
    while(pos<len){
      pos=a.indexOf(x,pos);
      if(pos===-1)break;
      results.push(pos)
      pos++
    }
   return results;
  }

 

posted @ 2021-09-09 14:16  暴燥的小蓝鲸  阅读(745)  评论(0)    收藏  举报