JSON.parse()
来源:互联网 发布:网页压缩减肥软件 编辑:程序博客网 时间:2024/05/16 01:54
JSON.parse(text, reviver)
This method parses a JSON text to produce an object or array.
It can throw a SyntaxError exception.
The optional reviver parameter is a function that can filter and
transform the results. It receives each of the keys and values,
and its return value is used instead of the original value.
If it returns what it received, then the structure is not modified.
If it returns undefined then the member is deleted.
参数
text
必需。 一个有效的 JSON 字符串。
reviver
可选。 一个转换结果的函数。 将为对象的每个成员调用此函数。 如果成员包含嵌套对象,则先于父对象转换嵌套对象。 对于每个成员,会发生以下情况:
如果 reviver 返回一个有效值,则成员值将替换为转换后的值。
如果 reviver 返回它接收的相同值,则不修改成员值。
如果 reviver 返回 null 或 undefined,则删除成员。
返回值
一个对象或数组。
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>JSON.parse()</title>
- <script type="text/javascript" src="json2.js"></script>
- <script type="text/javascript">
- var data='{'
- +'"root":'
- +'['
- +'{"name":"1","value":"0"},'
- +'{"name":"6101","value":"西安市"},'
- +'{"name":"6102","value":"铜川市"},'
- +'{"name":"6103","value":"宝鸡市"},'
- +'{"name":"6104","value":"咸阳市"},'
- +'{"name":"6105","value":"渭南市"},'
- +'{"name":"6106","value":"延安市"},'
- +'{"name":"6107","value":"汉中市"},'
- +'{"name":"6108","value":"榆林市"},'
- +'{"name":"6109","value":"安康市"},'
- +'{"name":"6110","value":"商洛市"}'
- +']'
- +'}';
- //示例1:此示例使用 JSON.parse 将 JSON 字符串转换为对象
- var jsontext = '{"firstname":"Jesper","surname":"Aaberg","phone":["555-0100","555-0120"]}';
- var contact = JSON.parse(jsontext);
- document.write(contact.surname + ", " + contact.firstname + ", "+ contact.phone);
- //dateReviver
- //var dateObj = new Date(Date.UTC('2008', +'01' - 1, +'01', +'12', +'00', +'00'))
- //alert(dateObj.toUTCString())
- //示例2:此示例使用 JSON.parse 反序列化 ISO 格式的日期字符串, 将返回Date格式对象。
- var jsontext2 = '{ "hiredate": "2008-01-01T12:00:00Z", "birthdate": "2008-12-25T12:00:00Z" }';
- var dates = JSON.parse(jsontext2, dateReviver);
- document.write("<br /><br />"+dates.birthdate.toUTCString());
- function dateReviver(key, value) {
- var a;
- if (typeof value === 'string') {
- a = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value);
- if (a) {
- return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],
- +a[5], +a[6]));
- }
- }
- return value;
- };
- </script>
- </head>
- <body>
- </body>
- </html>
上面代码中有两个示例:
示例1功能为将json字符串转化为json对象。(注意!json字符串的格式一定要标准,key和value一定要用双引号包括,否则会出线解析异常)
- Parse JSON
- JSON.parse
- JSON.parse()
- JSON.parse()
- JSON.parse()
- JSON.parse() JSON.stringify()
- JSON.parse(JSON.stringify())
- 【JSON】JSON.parse()
- Native JSON Parse
- JSON Parse and Stringify
- parse json with python
- JSON.parse()方法
- JSON.parse: unexpected character
- JSON parse()方法
- java 解析(parse) json
- JSON的方法--parse()
- How to parse JSON
- JSON.parse()方法
- Cocos2d-JS项目之四:UI界面的优化
- Logstash 日志管理工具
- XML语言学习6--Schema的学习
- SVN中tag和branch的区别
- 如何生成machineKey
- JSON.parse()
- 基于Theano的深度学习(Deep Learning)框架Keras学习随笔-12-核心层
- hessian异常
- CocoaPods版本升级
- iOS网络开发概述
- STL源码——function adapter函数适配器/函数配接器
- Restful API 的设计规范
- php 二维数组排序方法
- 未来从此开始