一步,打开eclipse开发工具,新建静态页面lastIndexOf.html,如下图所示:
第二步,在<script></script>内编写代码,声明两个变量E1和E2,如下图所示:
第三步,预览该静态页面,打开浏览器控制台,查看打印结果,如下图所示:
第四步,再次修改代码,lastIndexOf方法内第一个参数设置为数组中没有的元素,如下图所示:
第五步,再次预览该静态页面,发现打印的结果为“-1”,说明没有查找到该元素,如下图所示:
第六步,再次修改代码,添加第二个参数,从倒数第二个开始查找,如下图所示:
Array.prototype.getIndex=function(value){var str = this.toString()
var index = str.indexOf(value)
if(index >= 0){
//存在返回索引
var reg1 = new RegExp("((^|,)"+value+"(,|$))","gi")
return str.replace(reg1,"$2@$3").replace(/[^,@]/g,"").indexOf("@")
}else{
return -1//不存在此项
}
}
向数组添加一个getIndex的方法,arr.getIndex('b')
给你理下逻辑,你的需求分两部分
获取数组的最大数值,如下:
Math.max.apply(Math,[1,2,3,4,5])
获取某数值下的下标值,把第一点的数据,用遍历的方式匹配,从而返回当前下标值,如下:
var list=[1,2,3,4,5],max=5,index=-1for(var i=0,len=list.lengthi<leni++){
if(list[i]==max){
index=i
break
}
}
return index
以上,就不组合了,靠自己尝试。