Foros del Web » Programando para Internet » Javascript »

Serializar array asociativo

Estas en el tema de Serializar array asociativo en el foro de Javascript en Foros del Web. Buenas, recurro a escribir un post porque no doy con la solución en ninguna web. El tema es que necesito serializar un array asociativo para ...
  #1 (permalink)  
Antiguo 22/01/2013, 22:03
 
Fecha de Ingreso: enero-2013
Mensajes: 6
Antigüedad: 11 años, 3 meses
Puntos: 0
Pregunta Serializar array asociativo

Buenas, recurro a escribir un post porque no doy con la solución en ninguna web.
El tema es que necesito serializar un array asociativo para poder meterlo en una cookie, he estado buscando una función que funcione como el serialize() de php pero no hay manera. ¿Conoceis alguna función o manera en Javascript?
Gracias :)
  #2 (permalink)  
Antiguo 23/01/2013, 07:10
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Serializar array asociativo

No existen los "arrays asociativos" en JavaScript (y en otras noticias.... los arrays de PHP son una mierda).

Si estás hablando de objetos (que en JavaScript se usan como HashMap), podes utilizar JSON.stringify y JSON.parse para serializar/deserializar.

Código Javascript:
Ver original
  1. var data = {
  2.     name: 'John',
  3.     lastname: 'Doe',
  4.     age: 33
  5. };
  6.  
  7. var serialized = JSON.stringify(data);
  8.  
  9. serialized; // "{"name":"John","lastname":"Doe","age":33}"
  10.  
  11. JSON.parse(serialized).age; // 33

Está práctica sin embargo, requiere ciertas precauciones, como por ejemplo evitar la serialización de funciones o de referencias circulares.
Tambien hay que considerar que JSON puede no estar disponible en el browser, con lo cual necesitarias alguna implementación externa (veáse JSON2 de Crockford).
__________________
blog | @aijoona
  #3 (permalink)  
Antiguo 23/01/2013, 15:37
 
Fecha de Ingreso: enero-2013
Mensajes: 6
Antigüedad: 11 años, 3 meses
Puntos: 0
Respuesta: Serializar array asociativo

Mira este es un trozo del código:

Código:
var casilla = Array();
casilla['posx'] = x;
casilla['posy'] = y;
casilla['disparado'] = false; 
casilla['perimetro'] = false;
Supongo que no es la mejor manera pero hace poco que he empezado a estudiar programación web. Provaré de utilizar objetos en vez de arrays. Un saludo y gracias!
  #4 (permalink)  
Antiguo 24/01/2013, 07:02
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Serializar array asociativo

1. Ahi necesitas un Object y no un Array.
2. No uses el constructor 'new Array' (y ya que estamos, tampoco el 'new Object')
__________________
blog | @aijoona

Etiquetas: asociativo, funcion, php, serializar
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 16:10.