¿Y para qué usas un prototype? Hablas de "encontrar un elemento en un array por una de sus propiedades".
A ver, hasta dónde yo se, un array no es más que una tabla (n x m) dónde cada "celda" i,j contiene un valor; en un lenguaje con strong typing, dichos valores corresponderan todos al mismo tipo de datos; en lenguajes como javascript, php y similares, con tipado débil, puedes mezclar el tipo de datos (práctica poco aconsejable). Por ello, no se a qué te refieres a "encontrar un elemento en un array por una de sus propiedades" Lo que puedes encontrar es la posición dentro de un array de un elemento determinado, y devolverla, pero lo que tu escribes aquí no es un array exactamente... this[a].id Que yo sepa un elemento de un array no tiene esa propiedad... No tiene ninguna propiedad... Pero corrígeme si me equivoco por favor. No se si habrás mezclado muchas cosas diferente en ese script y ahora tienes una ensalada de narices.... Mira, este código lo utilizo yo en una clase jS mía para buscar el índice de un elemento determinado: classToldoConfiguratorStep1.prototype.searchIndex_aModelos_byIdModel = function(iIdMod) { var iLenMatrixModels = g_aModelos.length; var iIndexIdModelSearched = null; for (var i = 0; i < iLenMatrixModels; i++) { if (g_aModelos[i][0] == iIdMod) { iIndexIdModelSearched = i; i = iLenMatrixModels; } } return iIndexIdModelSearched; } Busca en un array global g_aModelos en la primera "fila", o sea, en las coordenadas (i, 0); no es complicado extenderlo para que busque en un array (i,j), inclusive, hacerlo todavía más genérico para que busque en un array de infinitas dimensiones; podría hacerse utilizando recursividad, y buscando por "fila" (o sea, manteniendo fijas todas las dimensiones menos una). Un saludo. > -----Mensaje original----- > De: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] En nombre de Martin > Szyszlican > Enviado el: jueves, 02 de marzo de 2006 5:42 > Para: javaescript@scriptia.net > Asunto: [javaEScript] Encontrar un elemento en un array > > Hola, hace un tiempo que tenía ganas de suscribirme aqui. > Retomé en estos días el JavaScript, estoy haciendo una serie de > utilidades para mi CMS. > Una de ellas requiere que encuentre un elemento en un array > por una de > sus propiedades. > Es decir, yo sé que en un array hay un elemento que tiene una > propiedad > "id" con determinado valor. > Hice un script (copiando de otros lados) que pretende hacer > eso, pero no > parece funcionar. > Aquí el código: > > Array.prototype.findElementById = function( element_id ) { > for( a in this ) { > if (this[a].id) { > if( this[a].id == element_id ) { > return this[a]; > } > else if( this[a] instanceof Array) { > return this[a].findElementById( element_id ); > } > } > } > return false; > } > > -- > Martin Szyszlican > www.ylisto.info > > > > > > > ___________________________________________________________ > 1GB gratis, Antivirus y Antispam > Correo Yahoo!, el mejor correo web del mundo > http://correo.yahoo.com.ar > > _______________________________________________ > javaEScript mailing list > javaEScript@scriptia.net > http://lists.scriptia.net/listinfo.cgi/javaescript-scriptia.net _______________________________________________ javaEScript mailing list javaEScript@scriptia.net http://lists.scriptia.net/listinfo.cgi/javaescript-scriptia.net