Foros del Web » Programando para Internet » Javascript »

Propiedad length de objeto

Estas en el tema de Propiedad length de objeto en el foro de Javascript en Foros del Web. Un saludo, quisiera saber de que forma se puede obtener el length en un objeto como el siguiente....... var jornadas = { "1J" :[{'campo1':"texto"},{'campo1':"texto"{]........................ "2J" ...
  #1 (permalink)  
Antiguo 06/04/2010, 12:23
 
Fecha de Ingreso: febrero-2010
Ubicación: Bizkaia
Mensajes: 22
Antigüedad: 14 años, 2 meses
Puntos: 0
Propiedad length de objeto

Un saludo, quisiera saber de que forma se puede obtener el length en un objeto como el siguiente.......

var jornadas = {
"1J" :[{'campo1':"texto"},{'campo1':"texto"{]........................
"2J" :[{'campo1':"texto"},{'campo1':"texto"{]........................
}

jornadas.length da como resultado undefined

¿No existe la manera de conocer la cantidad de elementos sin recurrir a un bucle?

gracias.
  #2 (permalink)  
Antiguo 06/04/2010, 20:01
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Propiedad length de objeto

en los objetos basicos no existe la propiedad length. la propiedad length solo existe en aquellos objetos que tienen algun mecanismo de actualizacion. por ejemplo los arrays, las colecciones y los string. si quieres implementarlo en un objeto basico, tendrias que implementar un mecanismo similar.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 07/04/2010, 05:02
 
Fecha de Ingreso: febrero-2010
Ubicación: Bizkaia
Mensajes: 22
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Propiedad length de objeto

Cita:
Iniciado por zerokilled Ver Mensaje
en los objetos basicos no existe la propiedad length. la propiedad length solo existe en aquellos objetos que tienen algun mecanismo de actualizacion. por ejemplo los arrays, las colecciones y los string. si quieres implementarlo en un objeto basico, tendrias que implementar un mecanismo similar.
Gracias por la respuesta zerokilled, pero hay algo que no entiendo.
Cuando te refieres a implementarlo, ¿ quieres decir que hay que realizar un bucle para obtener en n de elementos ?.
Tendría que realizarlo, supongo, con un while y una condición, que pare cuando no exista el objeto ¿cómo de índica?

por ejemplo

var x = 0;
var nelementos = 0;

while ( jornadas[x+"J"] ) { ¿que condición?
nelementos++;
x++;
}

gracias y un saludo
  #4 (permalink)  
Antiguo 07/04/2010, 05:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Propiedad length de objeto

Hola:

Los bucles para recorreo las propiedades de los objetos son for..in.

Una implementación genérica podría ser así:

Object.prototype.n = function(){var _n = 0; for (i in this) _n++; return _n;}
Object.prototype.length = n();
window.onload = function() {
x = new Object();
alert(x.length);
}

Claro que sería más fácil definir una función...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: objeto, propiedad
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:27.