Al igual que el lenguaje Java, los objetos se pueden serializar y deserializarse en JavaScript, guardando así objetos. En el estándar EcMascript 5, la serialización de objetos en JavaScript se implementa a través de JSON.Stringify (), mientras que la deserialización se implementa a través de JSON.PARSE ()::
La copia del código es la siguiente:
var o = {x: 1, y: 29, z: 42};
var s = json.stringify (o);
console.log (s); // {"x": 1, "y": 29, "z": 42}
var c = json.parse (s);
console.log (c); // objeto {x = 1, y = 29, z = 42}
Para los navegadores que solo admiten el estándar EcMascript 3, puede usar JSON2.JS escrito por Douglas Crockford (https://github.com/douglascrockford/json-js).
Durante el proceso de serialización del objeto, Nan, Infinity y -Infinity se serializarán a "NULL"; El objeto de fecha se serializará a una cadena que representa el tiempo correspondiente (pero cuando se deserialice usando json.parse (), la cadena de tiempo existirá como una cadena normal y no se reconstruirá en un objeto de fecha).
Cuando se usa json.stringify () para serializar un objeto, la propiedad serializada se limita a la propiedad enumerable del objeto en sí (propio). Cuando se ejecuta json.stringify (), JavaScript primero descubrirá si hay un método TOJSON () en el objeto que debe ser serializado. Si existe el método TOJSON (), se llamará al método y el resultado que devuelve se usa como objetivo de serialización. Si el método TOJSON () no existe, se utiliza el método de serialización predeterminado.