对象序列化是指对象状况转为字符串,也能够将字符串复原为对象。
ECMAScript5供应了JSON.stringify()
和JSON.parse()
两个要领:
1、JSON.stringify()
,运用该要领序列化对象。JSON.stringify()
只能序列化对象的可罗列的属性,关于一个不能序列化的属性将在对象序列化后天生的字符串中省略掉这个属性。
2、JSON.parse()
,运用该要领复原对象。
var obj={x:1,y:2,z:3};
var p=JSON.stringify(obj);
console.log(p);//"{x:1,y:2,z:3}"
var o=JSON.parse(p);
console.log(o); //{x:1,y:2,z:3},o是obj的深度拷贝,
console.log(o===obj); //false o和obj并非同一个对象
JSON.stringify()
和JSON.parse()
都能够传入第二个可选参数,为对象序列化或复原的属性列表,来自定义对象序列化和复原。