js解析与序列化json数据(三)json的解析探讨
2023-06-13 09:14:45 时间
这一节我们主要讨论json的解析。
JSON.parse()方法也可以接收另一个参数,该参数是一个函数,将早每个键值对上调用。为了区别JSON.stringify()接收的替换(过滤)函数(replacer),这个函数被称作还原函数(reviver),但实际上这两个函数的签名是相同的——它们都接收连个参数,一个键和一个值,而且都需要返回一个值。
如果还原函数返回undefined,则表示要从结果中删除相应的键;如果返回其他值,则将该值插入到结果中。如:
复制代码代码如下:
JSON.parse()方法也可以接收另一个参数,该参数是一个函数,将早每个键值对上调用。为了区别JSON.stringify()接收的替换(过滤)函数(replacer),这个函数被称作还原函数(reviver),但实际上这两个函数的签名是相同的——它们都接收连个参数,一个键和一个值,而且都需要返回一个值。
如果还原函数返回undefined,则表示要从结果中删除相应的键;如果返回其他值,则将该值插入到结果中。如:
<html>
<head>
<title></title>
<scripttype="text/javascript">
functioninit()
{
varstudent={
name:"Bill",
birthDate:newDate(1990,8,4)
};
varjsonText=JSON.stringify(student);
varstudentObject=JSON.parse(jsonText,function(key,value){
if(key=="birthDate")
{
returnnewDate(value);
}
else
{
returnvalue;
}
});
}
</script>
</head>
<body>
<inputtype="button"onclick="init()"value="测试"/>
</body>
</html>
以上代码先是为student添加了出生日期birthDate属性,该属性保存着一个Date对象。这个对象在经过序列化之后变成了有效地JSON字符串,然后经过解析又在studentObject中还原为一个Date对象。
相关文章
- js面试题及答案2020_JS面试题大全
- js 二维数组 添加json数据及js数组与json字符串「建议收藏」
- 用JS获取地址栏url参数的方法_js的url是啥
- js解决单线程之路 - worker的使用分析
- 原生 JS 实现 HTML 转 Markdown,以及其实现逻辑(html2md.js 或 html2markdown.js)
- 【源码】PDF.js批注注释插件库(纯JS). 创建和保存PDF批注(PDF 高亮/签名/插图/截屏/文本框/画笔/多边形)-pdf.js
- Mysql使用函数json_extract处理Json类型数据的方法实例
- js中使用ajax请求数据的时候,如何实现return详解编程语言
- 使用JS连接MySQL数据库:实现化繁为简(js连接mysql数据库)
- MySQL存储JSON格式的数据(mysql存json格式)
- MySQL玩转JSON:实现轻松的数据存储和处理(mysql处理json)
- 利用 JS 实现 Redis 的连接(js连接redis)
- 使用 JS 操作 Redis:实现强大数据存储.(js调用redis)
- 使用Oracle解析JSON数据(oracle解析json)
- 深入MySQL如何有效利用JSON格式存储和查询数据(mysql中使用json)
- 数据JS技术实现实时获取Oracle数据(js实时获取oracle)
- 破解JSON数据,Oracle数据库助力转换(json转oracle)
- 精简操作以JSON方式修改Oracle数据库中的数据(json修改oracle)
- 从前端JS里请求Redis资源,搭建高性能应用(前端js请求redis)
- Redis中数据批量转换为JSON格式(redis 转json)
- CSS和JS标签style属性对照表(方便js开发的朋友)
- JS对象与JSON格式数据相互转换
- 获取服务器传来的数据用JS去空格的正则表达式
- js连接数据库如何操作数据库中的数据
- js解析与序列化json数据(二)序列化探讨
- JS将所有对象s的属性复制给对象r(原生js+jquery)
- 利用js读取动态网站从服务器端返回的数据
- jQuery.parseJSON(json)将JSON字符串转换成js对象