Error con la función indexOf() al utilizarla con arrays en Internet Explorer

marzo 29, 2012

Trabajando con arrays en javascript, una función bastante interesante con la que contamos es con indexOf() para obtener la posición de la primera ocurrencia del valor especificado en un array.

Casualmente, esta función no está disponible para arrays en Internet Explorer 8 y anteriores pero si que está disponible para utilizar con strings.

Con este sencillo «hack» podremos contar con esta función cuando manejemos arrays.

1
2
3
4
5
6
7
8
9
10
if(!Array.indexOf){
    Array.prototype.indexOf = function(obj){
        for(var i=0; i<this.length; i++){
            if(this[i]==obj){
                return i;
            }
        }
        return -1;
    }
}

Tags ; , , , , ,

Escribe un comentario

Los comentarios son moderados y se utiliza rel="nofollow" para los enlaces.