一: JSON数据的两种解析方法 JSON.parse() 、eval ()方法
1 :JSON.parse() : 用于将一个 JSON 字符串转换为 JavaScript 对象。
var str =  '{"name":"zhangsan","age":18,"gender":"man"}';JSON.parse(str);复制代码

​ 结果:

注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。(有的浏览器不支持 JSON.parse() 如:IE 6 、IE 7 就不支持)

2:eval(): 也是用于将一个 JSON 字符串转换为 JavaScript 对象
var str =  '{"name":"zhangsan","age":18,"gender":"man"}';eval('('+str+')');  // 格式: eval( '(' + string + ')' );复制代码

​ 结果:

为什么eval()解析的时候要加括号?
那是因为eval()相当于一个执行环境,当你不加括号的时候,str 会被认为是一条复合语句。运行的时候就会逐个字符的解析。
但是加上括号的时候,str 就当做一个表达式去运算。从括号开始就被当做了对象进行识别。复制代码

JSON.parse() 和 eval()的区别

var num = 1;
var jsonstr = '{"name":"zhangsan","age":++num}';
var jsondata1 = eval('('+jsonstr+')');console.log(jsondata1);console.log(num);//这时num值为2var jasondata2=JSON.parse(jsonstr);
console.log(jsondata2);//报错复制代码

结果:

从上例就可以明显地看出, eval在解析字符串时,会执行该字符串中的代码。
由于用eval解析一个json字符串而造成原先的num的值改变(这样的后果是相当危险的)。复制代码
二:JSON.stringify() :用于将 JavaScript 值转换为 JSON 字符串
var str =  {"name":"zhangsan","age":18,"gender":"man"};JSON.stringify(str);复制代码

结果为:

三:jQuery.parseJSON() 将格式完好的JSON字符串转为与之对应的JavaScript对象
var str =  '{"name":"zhangsan","age":18,"gender":"man"}';jQuery.parseJSON(str)复制代码

结果:

如果这篇文章对您有帮助的话,请多多支持!

转载于:https://juejin.im/post/59bce998518825231f64b86f

JSON.parse()、eval()、JSON.stringify()、jQuery.parseJSON()的用法相关推荐

  1. 关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法

    JSON.parse(jsonString): 在一个字符串中解析出JSON对象 JSON.stringify(obj) : 将一个JSON对象转换成字符串 jQuery.parseJSON(json ...

  2. $.each 循环json以及JSON.parse() JSON.stringify() jQuery.parseJSON()的用法:

    $.each 循环 json 当循环的是 json 对象: var jsonStu = [{"name": "张三","score": &q ...

  3. JSON.parse、JSON.stringify、jQuery.parseJSON的区别

    JSON.parse(jsonString): 将一个JSON格式字符串中解析成JSON对象 JSON.stringify(obj) : 将一个JSON对象转换成字符串 jQuery.parseJSO ...

  4. JS/JavaScript中解析JSON --- JSON.parse()、JSON.stringify()以及$.parseJSON()使用详解

    JS/JavaScript中解析JSON --- JSON.parse().JSON.stringify()以及$.parseJSON()使用详解 现在JSON格式在web开发中非常重要,特别是在使用 ...

  5. php json.parse,JSON.parse()与JSON.stringify()和eval()使用方法详解

    这次给大家带来JSON.parse()与JSON.stringify()和eval()使用方法详解,JSON.parse()与JSON.stringify()和eval()使用的注意事项有哪些,下面就 ...

  6. JSON.parse()、JSON.stringify()和eval()的作用

    浅谈JSON.parse().JSON.stringify()和eval()的作用 相信大家对于JSON应该不陌生,度娘对这个名词的解释大致如下: "JSON(JavaScript Obje ...

  7. 详解JSON.parse 和 JSON.stringify

    文章目录 JSON.parse JSON.parse 语法 reviver 参数 JSON.parse 特性 解析的其他方法 JSON.stringify JSON.stringify 语法 repl ...

  8. JSON.parse和JSON.stringify 参数详解

    JSON.parse和JSON.stringify这两个浏览器自带(IE6/7除外)的方法平常我们经常用到,但是一般都只是用到了他们的第一个参数,比如字符串转对象:JSON.parse('{}')   ...

  9. js JSON.parse和JSON.stringify

    JSON.parse 将json字符串转换成对象 JSON.parse(text[, reviver]) reviver可选参数 var students = '{"id": 1, ...

  10. JSON.parse()、JSON.stringify、 parseInt()

    1.JSON.parse() JSON.parse()是Javascript中一个常用的 JSON 转换方法,JSON.parse()可以把JSON规则的字符串转换为JSONObject,JSON.p ...

最新文章

  1. 支付方式(2)——支付宝集成及使用
  2. android 自动休眠时间设置在哪里,Android休眠设置时间
  3. Mysql一些重要配置参数的学习与整理(一)
  4. python中列表 元组 字典 集合的区别
  5. 汉文博士 0.5.6 正式版发布
  6. (百度、谷歌)地图经纬度gps偏移解决办法:gps纠偏数据库纠偏
  7. 简单聊聊模型的性能评估标准
  8. c语言 函数的参数传递示例_C ++中带有示例的nearint()函数
  9. NBT:你想成为计算生物学家?
  10. C语言之程序中内存的来源:栈 堆 数据段
  11. keil软件仿真时,程序不能正常运行解决方法
  12. spring p2p项目html,springboot2.x项目实战视频教程p2p金融中等项目
  13. Ubuntu下如何创建文本文件
  14. Vue3中文文档 - vuejs
  15. KEGG COMPOUND 数据库
  16. std::ios_base::fmtflags orig std::streamsize prec
  17. 程序人生 | 记一次裸辞,裸辞需三思而后行!
  18. csr867x入门之spp使用(七)
  19. 下载XXX不安全,SmartScreen筛选器已阻止下载
  20. (C++)将数据库文件导出XML文件以及解析XML文件生成数据库文件的处理方法

热门文章

  1. Linux基础(7)--串口编程
  2. LeetCode-1两数之和
  3. 7-46 最长对称子串 (25 分)
  4. PTA17、求指定层的元素个数 (10 分)
  5. STM32 (零)--------STM32介绍
  6. C程序语言表达式运算顺序,详解C++编程中表达式的语义与计算顺序
  7. java中showconfirmdialog_Java实现超市管理系统(含数据库)
  8. microsoft visual c++ 编译c语言,Microsoft Visual C++ 程序的部署方法
  9. java查询到更新之前的数据_Java对数据库的查询和更新操作详解
  10. windows下搭建iphone开发环境