JSON.parse()、eval()、JSON.stringify()、jQuery.parseJSON()的用法
一: 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()的用法相关推荐
- 关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
JSON.parse(jsonString): 在一个字符串中解析出JSON对象 JSON.stringify(obj) : 将一个JSON对象转换成字符串 jQuery.parseJSON(json ...
- $.each 循环json以及JSON.parse() JSON.stringify() jQuery.parseJSON()的用法:
$.each 循环 json 当循环的是 json 对象: var jsonStu = [{"name": "张三","score": &q ...
- JSON.parse、JSON.stringify、jQuery.parseJSON的区别
JSON.parse(jsonString): 将一个JSON格式字符串中解析成JSON对象 JSON.stringify(obj) : 将一个JSON对象转换成字符串 jQuery.parseJSO ...
- JS/JavaScript中解析JSON --- JSON.parse()、JSON.stringify()以及$.parseJSON()使用详解
JS/JavaScript中解析JSON --- JSON.parse().JSON.stringify()以及$.parseJSON()使用详解 现在JSON格式在web开发中非常重要,特别是在使用 ...
- php json.parse,JSON.parse()与JSON.stringify()和eval()使用方法详解
这次给大家带来JSON.parse()与JSON.stringify()和eval()使用方法详解,JSON.parse()与JSON.stringify()和eval()使用的注意事项有哪些,下面就 ...
- JSON.parse()、JSON.stringify()和eval()的作用
浅谈JSON.parse().JSON.stringify()和eval()的作用 相信大家对于JSON应该不陌生,度娘对这个名词的解释大致如下: "JSON(JavaScript Obje ...
- 详解JSON.parse 和 JSON.stringify
文章目录 JSON.parse JSON.parse 语法 reviver 参数 JSON.parse 特性 解析的其他方法 JSON.stringify JSON.stringify 语法 repl ...
- JSON.parse和JSON.stringify 参数详解
JSON.parse和JSON.stringify这两个浏览器自带(IE6/7除外)的方法平常我们经常用到,但是一般都只是用到了他们的第一个参数,比如字符串转对象:JSON.parse('{}') ...
- js JSON.parse和JSON.stringify
JSON.parse 将json字符串转换成对象 JSON.parse(text[, reviver]) reviver可选参数 var students = '{"id": 1, ...
- JSON.parse()、JSON.stringify、 parseInt()
1.JSON.parse() JSON.parse()是Javascript中一个常用的 JSON 转换方法,JSON.parse()可以把JSON规则的字符串转换为JSONObject,JSON.p ...
最新文章
- 支付方式(2)——支付宝集成及使用
- android 自动休眠时间设置在哪里,Android休眠设置时间
- Mysql一些重要配置参数的学习与整理(一)
- python中列表 元组 字典 集合的区别
- 汉文博士 0.5.6 正式版发布
- (百度、谷歌)地图经纬度gps偏移解决办法:gps纠偏数据库纠偏
- 简单聊聊模型的性能评估标准
- c语言 函数的参数传递示例_C ++中带有示例的nearint()函数
- NBT:你想成为计算生物学家?
- C语言之程序中内存的来源:栈 堆 数据段
- keil软件仿真时,程序不能正常运行解决方法
- spring p2p项目html,springboot2.x项目实战视频教程p2p金融中等项目
- Ubuntu下如何创建文本文件
- Vue3中文文档 - vuejs
- KEGG COMPOUND 数据库
- std::ios_base::fmtflags orig std::streamsize prec
- 程序人生 | 记一次裸辞,裸辞需三思而后行!
- csr867x入门之spp使用(七)
- 下载XXX不安全,SmartScreen筛选器已阻止下载
- (C++)将数据库文件导出XML文件以及解析XML文件生成数据库文件的处理方法
热门文章
- Linux基础(7)--串口编程
- LeetCode-1两数之和
- 7-46 最长对称子串 (25 分)
- PTA17、求指定层的元素个数 (10 分)
- STM32 (零)--------STM32介绍
- C程序语言表达式运算顺序,详解C++编程中表达式的语义与计算顺序
- java中showconfirmdialog_Java实现超市管理系统(含数据库)
- microsoft visual c++ 编译c语言,Microsoft Visual C++ 程序的部署方法
- java查询到更新之前的数据_Java对数据库的查询和更新操作详解
- windows下搭建iphone开发环境