[转载]在IE使用javascript 数组的indexOf – x123jing的专栏 – 博客频道 – CSDN.NET.
最近在使用JavaScript数组时,为了获取数组中元素的索引,使用了indexOf.在firefox中调试ok,但是放到ie中,总是出错,无法执行。查查资料,发现原来在ie中不支持indexOf。如果要使用,需要插入下面的一段代码:
if(!Array.indexOf) { Array.prototype.indexOf = function(obj) { for(var i=0; i { if(this[i]==obj) { return i; } } return -1; } } 例如: var a=new Array( 'morning', 'lunch', 'afternoon', 'night'); var flag_inout = 'lunch' //for ie can't support indexof if(!Array.indexOf){ Array.prototype.indexOf = function(obj){ for(var i=0; i if(this[i]==obj){ return i; } } return -1; } } var index_id = a.indexOf(flag_inout);
备注:其实ie支持字符串的indexOf,可以将数组转换为字符串在用indexOf来判断就可以了
如下
var flag_inout=flag_inout.join(“,”);