js解析与序列化json数据(三)json的解析探讨
js解析与序列化json数据(三)json的解析探讨
发布时间:2016-12-30 来源:查字典编辑
摘要:这一节我们主要讨论json的解析。JSON.parse()方法也可以接收另一个参数,该参数是一个函数,将早每个键值对上调用。为了区别JSON...

这一节我们主要讨论json的解析。

JSON.parse()方法也可以接收另一个参数,该参数是一个函数,将早每个键值对上调用。为了区别JSON.stringify()接收的替换(过滤)函数(replacer),这个函数被称作还原函数(reviver),但实际上这两个函数的签名是相同的——它们都接收连个参数,一个键和一个值,而且都需要返回一个值。

如果还原函数返回undefined,则表示要从结果中删除相应的键;如果返回其他值,则将该值插入到结果中。如:

复制代码 代码如下:

<html>

<head>

<title></title>

<script type="text/javascript">

function init()

{

var student={

name:"Bill",

birthDate:new Date(1990,8,4)

};

var jsonText=JSON.stringify(student);

var studentObject=JSON.parse(jsonText,function(key,value){

if(key=="birthDate")

{

return new Date(value);

}

else

{

return value;

}

});

}

</script>

</head>

<body>

<input type="button" value="测试" />

</body>

</html>

以上代码先是为student添加了出生日期birthDate属性,该属性保存着一个Date对象。这个对象在经过序列化之后变成了有效地JSON字符串,然后经过解析又在studentObject中还原为一个Date对象。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类