js某一元素在數組中的索引

第一種:數組遍歷javascript

1 function search(arr,dst){ 2     var i = arr.length; 3     while(i-=1){ 4         if (arr[i] == dst){ 5            return i; 6  } 7  } 8     return false; 9 }

使用方法:html

var a=[1,2,3,4];
search(a,3);//返回2

第二種:indexOf()java

var arr=[1,2,3,4]
arr.indexOf(2);//返回1

在某些IE版本中,不支持indexOf(),就須要先判斷Array是否有indexOf()方法數組

 1 var arr=[1,2,3,4]  2 if (!Array.indexOf){  3     Array.prototype.indexOf=function(obj){  4     var i=this.length;  5         while(i-=1){  6             if(this[i]==obj){  7                 return i;  8  }  9         }return -1; 10  } 11 } 12 arr.indexOf(3);//返回2

3、構造函數函數

原理就是方法二中兼容IE所採用的方法同樣,構造一個新的函數this

 1 Array.prototype.weizhi=function(obj){  2   var i=this.length;  3   for(i;i!=0;i-=1){  4     if(this[i]===obj){  5       return i;  6  }  7   }return false;  8 }  9 var arr=[1,2,3,4] 10 arr.wenzi(3);//返回2

第四種:一個數組 ,分別在另外一個數組中的位置(也能夠用來檢索一個元素 ,視需求所改變)url

 1 <script  type="text/javascript">
 2     var array=['a','b','c','d','c'];//總數組  3     var val = ['a','d']//要檢索的數組  4     var inde=[];//獲取的下標數組  5     for(var i=0;i<array.length;i++){  6         for(var x in val){  7             if(array[i]==val[x]){  8  inde.push(i)  9  } 10  } 11  } 12  console.log(inde) 13 </script>

 

 

原文地址:https://www.cnblogs.com/newgold/p/4877354.htmlspa

相關文章
相關標籤/搜索