Ver Mensaje Individual
  #17 (permalink)  
Antiguo 16/05/2014, 20:41
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 1 mes
Puntos: 1485
Respuesta: Crear array de nombre dinamico variableNmbreJugador+"Datos"

@italico, creo que aún no has captado como funciona for/in. lo que el compañero @jp91 quiso decir con valor[enumerable] sea verdadero es que el propio lenguaje haya permitido que una propiedad en particular se pueda enumerar. es algo que sucede transparentemente al programador, especialmente con las propiedades built-in del lenguaje. esta parte del lenguaje aún no la he visto bien pero en las últimas versiones del estandar de javascript (ECMA-262), el lenguaje permite al programador definir las características de una propiedad mediante un método setter o getter. entre esas características, el programador puede definir si una propiedad es enumerable asignando un boolean, donde true (creo) indica que la propiedad se puede enumerar. a como lo entiendo, enumerar propiedades significa que tu puedas recopilar una lista de propiedades.

en el ejemplo que pones usando valores primitivos como propiedad (array[false] por ejemplo), sucede otra cosa. en ese caso, el intérprete convierte ese valor a string y lo utiliza como el nombre de la propiedad. o sea, array[false] es lo mismo que array['false'].

Código:
var array = [true, false, null,'string'];
array[false] = 'boolean';
console.log( array[ 'false' ] ); // imprime 'boolean';
Cita:
En esa modifificacion de tu script con prototipos, se perdio el orden (porque son enumerables) y descarto la llave "Pablo" por lo mismo...
ahí pablo no se descartó, recuerda que for/in lee los nombres de las propiedades, no los valores de las propiedades. en tu ejemplo, el 3 del resultado representa a Pablo.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Última edición por zerokilled; 16/05/2014 a las 20:49