常见前端JSON互转用法:
1)JSON字符串转为JSON对象(目前,我所知道的有四种实现方式)
1.1)JQuery方式
--其中string为JSON字符串
var temp = $.parseJSON(string)
1.2)(Firefox,chrome,opera,safari,ie)等浏览器支持的转换方式
--string为JSON字符串
var temp = JSON.parse(string);
注:ie8(兼容模式),ie7和ie6没有JSON对象,推荐采用JSON官方的方式,引入json.js。
1.3)Javascript支持的转换方式
--string为JSON字符串
var temp = eval("(" + string + ")");
注:其中string必须是JSON字符串,不然报错,而直接eval(JSON对象),会直接返回,因为eval函数中参数只能是字符串,非字符串,会直接返回原对象。
eval文档:W3C关于eval函数用法说明
1.4)JSON官方的转换方式(感觉与方法2类似)
http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;
可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。
2)JSON对象转为JSON字符串
2.1)(Firefox,chrome,opera,safari,ie)等浏览器支持的转换方式
--json为JSON对象
var temp = JSON.stringify(json);
注:ie8(兼容模式),ie7和ie6没有JSON对象,推荐采用JSON官方的方式,引入json.js。
文章参考:JS字符串转换为JSON的四种方法笔记
若有不足,请指正,谢谢!