方法1:
Array.prototype.weizhi=function(obj){ var i=this.length; for(i;i!=0;i=i-1){ if(this[i] ===obj ){ return i; } } return false; } var arr=[1,2,3,4]; log("3="+arr.weizhi(3));//返回2
方法二:
var arr=[1,2,3,4]; if(!Array.indexOf){//判断是不是有indexOf方法 Array.prototype.indexOf = function(obj){ var i=this.length; //while(i = i-1){//(i -= 1)只要i>0 ,正常执行 ,0和负数都是 false; (调试时打了断点后等3、5分钟就会变成死循环IE Chrome都一样) //while(i --)//只要i>0 ,正常执行 ,0和负数都是 false (调试时打了断点后等3、5分钟就会变成死循环IE Chrome都一样) while(i >= 0){//只要i>0 ,正常执行 ,0和负数都是 false (应该严格采用这样的方法) if(this[i] === obj){ return i; } alert(i); i --; } return -1; } } arr.indexOf("张三");
function search(arr,dst){ var i = arr.length -1; while(i >= 0){ if (arr[i] === dst){ return i; } i-- ; } return -1; } var a=[4]; log(search(a,4));//返回2
本文介绍两种在JavaScript中实现数组元素查找的方法。一种是通过自定义weizhi方法来查找指定元素的位置,另一种是实现indexOf方法来完成同样的任务。此外,还提供了一个通用的search函数用于数组搜索。
765

被折叠的 条评论
为什么被折叠?



