//função para pesquisar array e retornar o indice de um valor // --- // procura a posição de um valor dentro de um array de acordo com o parametero 'valor' // retorna -1 se não encontrar o valor // // --- syntax: // array.search( valor [, de, restrito]) // - valor: valor a procurar // - de: posição de inicio da procura // - restrito: valor booleano. Se true verifica se o tipo de dados corresponde // ex: 0 é diferente de "0" um é do tipo INT e o 2º é uma String // Por isso são de tipos diferentes // --- Array.prototype.search = function(valor, de, restrito) { if(de == undefined || de >= this.length) de = 0; restrito = restrito == undefined ? false : restrito; for(var a = de; a < this.length; a++) { if(this[a] == valor) { if(restrito) { if(this[a].__proto__ == valor.__proto__) { return a; } } else { return a; } } } return -1; }; // -------- // uso da função // -------- /* a = [0,1,2,3,4,5,'',7,"0",1] b = "0" resultado = a.search(b) // retorna 0 resultado2 = a.search(b,0,true) // retorna 8 resultado3 = a.search(b,9) // retorna -1 */