Foros del Web » Programando para Internet » Javascript »

Problemas con object java script

Estas en el tema de Problemas con object java script en el foro de Javascript en Foros del Web. Hola necesito cambie le contenido de un objeto y no soy capaz de hacerlo en condiciones. os cuento Tengo un array de Objetos y necesito ...
  #1 (permalink)  
Antiguo 24/05/2013, 04:52
 
Fecha de Ingreso: mayo-2011
Mensajes: 8
Antigüedad: 12 años, 11 meses
Puntos: 1
Problemas con object java script

Hola
necesito cambie le contenido de un objeto y no soy capaz de hacerlo en condiciones.
os cuento
Tengo un array de Objetos y necesito cambiar una propiedad de uno de los objetos y no soy capaz. la solución que he encontrado es eliminar el objeto y crearlo de nuevo cambiando el valor de la propiedad.

Código:
var servicio = listaServicios[i];
                listaServicios[i] = null;
                listaServicios[i] = {
                    IdServicio: servicio.IdServicio,
                    Servicio: servicio.Servicio,
                    Tipo: servicio.Tipo,
                    Direccion: servicio.Direccion,
                    Poblacion: servicio.Poblacion,
                    Provincia: servicio.Provincia,
                    Pais: servicio.Pais,
                    CP: servicio.CP,
                    NumeroClave: servicio.NumeroClave,
                    Nombre: servicio.Nombre,
                    Apellidos: servicio.Apellidos,
                    Contrato: servicio.Contrato,
                    Orden: ordenServicios[a].Orden
                };
no tengo mucha experiencia en el uso de objeto pero tiene que haver alguna forma mas sencilla de hacer esto
¿Se os ocurre como?
¿me podeis dar una pista?
  #2 (permalink)  
Antiguo 24/05/2013, 06:45
Avatar de SetheR  
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: Problemas con object java script

Puedes acceder a culaquier miembro publico de un objeto mediante el punto, tanto para leerlo como para modificarlo.

Algo así bastaría:

Código Javascript:
Ver original
  1. listaServicios[i].Orden = ordenServicios[a].Orden;

Suponiendo que i y a sean valores válidos.

Y recuerda, en Javascript, los objetos se tratan como referencias.

Un saludo.
  #3 (permalink)  
Antiguo 26/05/2013, 02:04
 
Fecha de Ingreso: mayo-2011
Mensajes: 8
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Problemas con object java script

Así era como creía que tenia que ser, pero... no me funciona, no cambia el valor de la propiedad. No entiendo lo que quiere decir por referencia.

Gracias
  #4 (permalink)  
Antiguo 26/05/2013, 03:39
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: Problemas con object java script

Hola:

Así como dice SetheR debería funcionar. Si no lo hace, posiblemente tengas algo mal en algún otro sitio. Quizás no estés cambiando el indice "i" en el que luego estás mirando, quizás estés usando inadvertidamente arrays distintos, quizás un error de sintaxis (no es lo mismo Orden que orden y si te equivocas simplemente estás creando un nuevo atributo), ... o cualquier otro error.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 27/05/2013, 01:21
 
Fecha de Ingreso: enero-2002
Mensajes: 19
Antigüedad: 22 años, 3 meses
Puntos: 0
Respuesta: Problemas con object java script

Lo he revisado todo, en el depurador todo aparece bien
el objeto, segun el depurador del chrome, es este:

listaServicios: Array[7]
0: Object
Apellidos: "XXXXX"
CP: "03100"
Contrato: "198811"
Direccion: "XXXX 9 CASA"
IdServicio: "129566"
Nombre: "XXX"
NumeroClave: "99427"
Orden: 0
Pais: "ESPAÑA"
Poblacion: "TORREVELLA/TORREVIEJA"
Provincia: "ALICANTE"
Servicio: "428653"
Tipo: "T"
id: 0
__proto__: Object
1: Object
2: Object
3: Object
4: Object
5: Object
6: Object
length: 7

he intentado forzar uno de los cambios del tipo
Código:
listaServicios[0].Nombre = "Papa";
y nada
no se como solucionarlo.

Última edición por juanlu; 27/05/2013 a las 04:30

Etiquetas: java, object
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 10:51.