javascript序列化
Posted 心碎whn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript序列化相关的知识,希望对你有一定的参考价值。
将js对象转换成JSON
var obj = {x:1,y:"string",z:null,m:[5,6,7]}
JSON.stringify(obj); //"{"x":1,"y":"string","z":null,"m":[5,6,7]}"
//需要注意的地方
//属性值为undefined 将不会出现在序列化后的结果当中
//属性值为NaN,将转换成null
//属性值为Infinity,将转换成null
var o = {x:undefined,y:null,z:NaN,m:Infinity,p:new Date()};
JSON.stringify(o) //"{"y":null,"z":null,"m":null,"p":"2017-06-24T13:48:50.975Z"}"
将JSON转换为js对象
var o = JSON.parse(‘{"x":1}‘);
o.x //1
序列化之自定义
var o = {
x:1,
y:2,
z:{
z1:1,
z2:3
}
}
JSON.stringify(o) //"{"x":1,"y":2,"z":{"z1":1,"z2":3}}"
//如果我们想序列化后z 显示 z1+z2的值 怎么办?
var o = {
x:1,
y:2,
z:{
z1:1,
z2:3,
toJSON:function(){
return this.z1+this.z2;
}
}
}
JSON.stringify(o) //"{"x":1,"y":2,"z":4}"
以上是关于javascript序列化的主要内容,如果未能解决你的问题,请参考以下文章