js字符串转json对象的四种实现方法
1. javascript函数eval()
语法:
var obj = eval ("(" + txt + ")"); //必须把文本包围在括号中,这样才能避免语法错误
eval()定义:eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
由于 JSON 语法是 JavaScript 语法的子集,JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。
注意:当字符串中包含表达式时,eval() 函数也会编译并执行,转换会存在安全问题。
2. 浏览器自带对象JSON,JSON.parse()
语法:
var obj = JSON.parse(text[, reviver]) //text:必需, 一个有效的 JSON 字符串。解析前要确保你的数据是标准的 JSON 格式,否则会解析出错。 //reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。
JSON.parse()比eval()安全,而且速度更快。支持主流浏览器:Firefox 3.5,IE 8,Chrome,Opera 10,Safari 4。
注意:IE8兼容模式,IE 7,IE 6,会存在兼容性问题。
3. jQuery插件,$.parseJSON()
语法:
var obj = $.parseJSON(json) //json:String类型,传入格式有误的JSON字符串可能导致抛出异常
4. ajax请求获取json数据时,$.getJSON()
语法:
jQuery.getJSON(url,data,success(data,status,xhr)) //url 必需。规定将请求发送的哪个 URL。 //data 可选。规定连同请求发送到服务器的数据。 //success(data,status,xhr) 可选。规定当请求成功时运行的函数。
这个时候返回的data已经是JSON对象,不需要再进行转换。
$.getJSON() 是简写的 Ajax 函数,等价于:
$.ajax({ url: url, data: data, success: callback, dataType: "json" });
总结
到此这篇关于js字符串转json对象的四种实现方法的文章就介绍到这了,更多相关js字符串转json对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
javascript实现拖动层效果代码(符合标准且兼容IE,chrome,firefox)
javascript实现拖动层,原理很简单,就是根据鼠标的位置实时设置层的left和top2013-06-06JavaScript使用showdown实现markdown预览功能
Showdown.js 是一个JavaScript库,用于将Markdown文本转换为HTML,这篇文章将给大家介绍了JavaScript使用showdown实现markdown预览功能,文中通过代码示例给大家讲解的非常详细,需要的朋友可以参考下2024-01-01基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
但是由于浏览器的兼容性问题,之前用的很多代码都失去效果,下面就给出一段能够兼容各个浏览器的代码,也不能够算是兼容,只能说在不支持的浏览器中能够给出提示,对js兼容各个浏览器设为首页加入收藏相关知识感兴趣的朋友可以参考下本文2016-01-01
最新评论