牛骨文教育服务平台(让学习变的简单)
博文笔记

JS中判断数组中是否包含某个元素indexof兼容性兼容性

创建时间:2015-11-04 投稿人: 浏览次数:3521

1.前几天写了一个JS游戏,其中,判断数组中是否包含某个元素,开始使用如下方法判断
if(appearAnimals.indexOf(randIndex) ==-1){
}
目前主流的浏览器都能正常显示,但是遇到IE9以下版本就不行,通过逐行排查,才发现是indexOf的兼容性问题。IE9以前的版本都不支持此方法,现在写一个兼容的方法如下:

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;
     }  
}

当然也可以考虑使用Jquery中inArray方法,如下
if($.inArray(randIndex, appearAnimals) ==-1){
}

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。