功能:

JSON.parse() 方法用来将 JSON 字符串解析成 javascript的对象,同时可以通过第二参数对解析值进行转换。

语法:

JSON.parse(text [, reviver]);

参数:

  • text

即JSON字符串,当参数格式不符合JSON规范时,会抛出 SyntaxError 异常

常规使用

JSON.parse('{}');           // {}
JSON.parse('false');        // false
JSON.parse('"string"');     // "string"
JSON.parse('[1, 2, 3, { "name": "lisa"}]'); // [1, 2, 3, { name: "lisa"}]
JSON.parse('null');         // null

当然也会出现特殊情况parse()方法处理不了,当要解析的字符串中存在 undefined 时会抛出错误。

  • reviver

转换器,如果传入该参数 (函数),可以用来修改解析生成的原始值。

JSON.parse('{"p": 5}', function (key, value) {return v * 2;
});
// { p: 10 }

reviver函数会从里到外遍历解析值,如上代码遍历到 p 这一层,对value进行修改,那么最后p属性对应的值为10。当遍历到最外层时,传入的是 ""字符串,此时这个调用的值就成了 { "": 解析值 }这样的格式

JSON.parse('{"1": 1, "2": 2,"3": {"4": 4, "5": {"6": 6}}}', function (k, v) {console.log(k);return v;
});

这里输出顺序为 1 2 3 6 5 3 ‘ ’,注意这里最后一位空字符串。而且这里 return v,可以知道 JSON.parse()方法默认返回的是 属性值,这里在函数处理时可以修改返回值。

JSON对象_JSON.parse()方法相关推荐

  1. json对象合并的方法

    求json对象合并的方法 var a ={"a":"1","b":"2"} var b ={"c": ...

  2. oracle json字符串转数组,json字符串转化成json对象(原生方法)

    json字符串.json对象.数组 三者之间的转换 //json字符串.json对象.数组 三者之间的转换 let jsonStr = '[{"id":"01" ...

  3. Dom 和 Jquery,json对象的使用方法

    2019独角兽企业重金招聘Python工程师标准>>> 一.dom对象和jquery的互相转化 比如有以下代码 <div id="fir"><i ...

  4. javascript遍历json对象数据的方法

    JSON中,有两种结构:对象和数组,对象是没有length这个属性,而数组结构是有的,下面分别说下这两种结构之间的区别和遍历方式. 1.对象 一个对象以"{"开始,"}& ...

  5. java json parser_Java JSONParser.parse方法代碼示例

    本文整理匯總了Java中org.json.simple.parser.JSONParser.parse方法的典型用法代碼示例.如果您正苦於以下問題:Java JSONParser.parse方法的具體 ...

  6. java将实体类转为json_JavaWeb实体类转为json对象的实现方法

    1.创建个实体类 实体类User代码: package com.neuedu.entity; import lombok.AllArgsConstructor; import lombok.Data; ...

  7. node.js字符串转对象querystring.parse方法使用说明

    方法说明: 将字符串转成对象.说白了其实就是把url上带的参数串转成数组对象.(看例子就知道咯) 语法: 复制代码代码如下: querystring.parse(str, [sep], [eq], [ ...

  8. 字符串转json对象的各种方法

    各种可能的解决方案: 1.prototype-1.5.1.js中提供了JSON的方法,String.evalJSON(true), 2.还有  parseJSON(), 3.或者eval(), 4.或 ...

  9. Json对象和Json字符串

    JSON对象 有时候在做项目的时候时常将这两个概念弄混淆,尤其是在使用springmvc的时候,后台@RequestBody接受的是一个json格式的字符串,一定是一个字符串.  先介绍一下json对 ...

最新文章

  1. TinaFace:人脸检测新纪录
  2. 西南石油大学计算机二级成绩查询,西南石油大学本科学生成绩自助查询打印终端管理办法...
  3. Linux进程通信之mmap
  4. kryoserializer java_使用Kryo序列化任意Java对象(获取IllegalAccess...
  5. 1152Google Recruitment
  6. 【Linux】修改Linux操作系统字符集与Oracle数据库一致
  7. RPC原来就是Socket——RPC框架到dubbo的服务动态注册,服务路由,负载均衡演化...
  8. 空间数据挖掘主要方法
  9. 运维半夜给我打电话,弹幕服务产生大量异常日志,没办法起床排bug...
  10. awk和perl对多文本进行统计(求他们的并集,并且如果前三列相同第四列的数字相加,第五列信息合并)...
  11. 推荐 一个PDF转Word内容不匹配、乱码的解决方法
  12. 程序员需要知道的97件事情之 ------- 谋定而后动
  13. windows截图快捷键_使用快捷键打开并使用Windows截图工具
  14. 记一次腾讯面试:进程之间究竟有哪些通信方式?如何通信? ---- 告别死记硬背
  15. MySQL数据库入门实战教程
  16. 企业微信手机端可以退出吗?会影响电脑端企业微信吗?
  17. 正则表达式 REGEXP_REPLACE
  18. postgres/pgadmin的使用
  19. mysql打平子表_对于oracle进行简单树查询(递归查询)
  20. 关于使用WMI获取杀毒软件信息

热门文章

  1. 牛逼的架构师是怎么炼成的?——阅读笔记03
  2. 【非原创】完全用Linux工作(上)(r4笔记第86天)
  3. Windows2000高级技巧
  4. b-tree和b+tree以及mysql为什么使用了b+树
  5. JAVA设计模式之责任链模式
  6. 制作无后端的静态网页
  7. ubuntu 18共享文件夹不显示问题解决
  8. 谷歌地图 官网 详细API
  9. [C和指针] ch12. 使用结构和指针
  10. 【Linux从青铜到王者】第二十篇:Linux网络基础第三篇之IP协议