>

javascript检查某些成分在数组中的索引值,javasc

- 编辑:正版管家婆马报彩图 -

javascript检查某些成分在数组中的索引值,javasc

方法一(使用递归函数):

在现在代浏览器中判断一个元素在不在一个数组中,咱们可以用Array对象的indexOf()方法来取得这个元素在当前数组中的索引值,若索引值不等于-1,数组中就存在这个元素,

var arr = [9,8,55,66,49,68,109,55,33,6,2,1];

var max = arr[0];

function findMax( i ){
  if( i == arr.length ) return max;
  if( max < arr[i] ) max = arr[i];
  findMax(i+1);
}

findMax(1);
console.log(max);

例如:

方法二(使用for循环遍历):

var arr = [2,53,23,'test',9,'array'];
//判断array在不在数组arr中
arr.indexOf('array') !== -1 ? alert('存在') : alert('不存在');
但是IE9以前的版本都不支持此方法,那咱们就只能扩展一个:
 代码如下复制代码
Array.prototype.indexOf = function(el){
 for (var i=0,n=this.length; i<n; i++){
 if (this[i] === el){
  return i;
 }
 }
 return -1;
}
var arr = [9,8,55,66,49,68,109,55,33,6,2,1];  
var max = arr[0];
for(var i = 1; i < arr.length; i++){
  if( max < arr[i] ){
    max = arr[i];
  }
}

console.log(max);

下面咱们就来检测一下各个浏览器的兼容性,代码如下:

方法三(使用apply将数组传入max方法中直接返回):

var arr = [2,53,23,'test',9,'array'];
if(!Array.indexOf){
  Array.prototype.indexOf = function(el){
 for (var i=0,n=this.length; i<n; i++){
 if (this[i] === el){
  return i;
 }
 }
 return -1;
   } 
}
arr.indexOf('array') !== -1 ? alert('存在') : alert('不存在');
Math.max.apply(null,[9,8,55,66,49,68,109,55,33,6,2,1])

上面就是用Array的indexOf方法来判断数组中一个元素是否存在的方法。

备注:除此之外,还有很多数组排序方式,都可以在排序后,根据新数组索引值获取 最大/最小 值。

Array的原生方法:

var a=[1,2,3,5];
alert(Math.max.apply(null, a));//最大值
alert(Math.min.apply(null, a));//最小值

concat(): 连接两个或更多的数组哦
join(): 把数组的所有元素放在一个字符串中
pop():删除并返回数组的最后一个元素
push():向数组的末尾添加一个元素,并返回数组长度。
reverse():颠倒数组中的元素顺序
shift(): 删除并返回数组的第一个元素。
slice():返回已选定的元素
sort():对数组的元素进行排序
splice():删除元素,并向数组添加新元素。
toSource():返回该对象的源代码
toString():把数组转换为字符串,并返回结果
valueOf():返回数组对象的原始值。

多维数组可以这么修改:

您可能感兴趣的文章:

  • js使用for循环查询数组中是否存在某个值
  • javascript实现查找数组中最大值方法汇总
  • javascript 折半查找字符在数组中的位置(有序列表)
  • JavaScript使用二分查找算法在数组中查找数据的方法
  • JS查找数组中重复元素的方法详解
  • 利用JavaScript如何查询某个值是否数组内
var a=[1,2,3,[5,6],[1,4,8]];
var ta=a.join(",").split(",");//转化为一维数组
alert(Math.max.apply(null,ta));//最大值
alert(Math.min.apply(null,ta));//最小值

您可能感兴趣的文章:

  • javascript检查某个元素在数组中的索引值
  • js使用for循环查询数组中是否存在某个值
  • javascript 折半查找字符在数组中的位置(有序列表)
  • JavaScript使用二分查找算法在数组中查找数据的方法
  • JS查找数组中重复元素的方法详解
  • 利用JavaScript如何查询某个值是否数组内

本文由网络计算发布,转载请注明来源:javascript检查某些成分在数组中的索引值,javasc