PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

javascript如何实现json字符串与对象转换

coldplay.xixi
coldplay.xixi 原创
2023-01-04 09:35:52 6137浏览

javascript实现json字符串与对象转换的方法:1、json转换为对象,代码为【var obj = eval('(' + str + ')')】;2、对象转成json,代码为【var str=obj.toJSONString()】。

本教程操作环境:windows7系统、javascript1.8.5版,DELL G3电脑。

javascript实现json字符串与对象转换的方法:

方法一:json.js实现json与对象相互转换

为了方便地处理JSON数据,JSON提供了json.js包,json.js免费下载地址。

json转换为对象

//json转换为对象
var obj = eval('(' + str + ')');
或者 
var obj = str.parseJSON(); //json字符串转换为对象
或者
var obj = JSON.parse(str); //json字符串转换为对象

注意:如果obj本来就是一个JSON对象,那么运用 eval()函数转换后(哪怕是多次转换)还是JSON对象,但是运用 parseJSON()函数处理后会有疑问(抛出语法异常)。

对象转成json

//对象转成json
可以运用 toJSONString()或者JSON.stringify()将JSON对象转化为JSON字符串。
var str=obj.toJSONString(); //将对象转成json
或者
var last=JSON.stringify(obj); //将对象转成json

以上,除了eval()函数是js自带的之外,其他的多个要领都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个函数都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON(),则说明您的json包版本太低。

方法二:jQuery.json实现json与对象相互转换

jQuery.json 是 jQuery 的一个插件,可轻松实现对象和 JSON 字符串之间的转换。可序列化 JavaScript 对象、数值、字符串和数组到 JSON 字符串,同时可转换 JSON 字符串到 JavaScript,免费下载地址。

对象转成json

//对象转成json
var thing = {plugin: 'jquery-json', version: 2.3};//js对象
var str = $.toJSON(thing);//转换为json,结果: '{"plugin":"jquery-json","version":2.3}'

json转成对象

//json转成对象
var  obj= $.evalJSON(str);
var name=obj.plugin;//js对象.属性,结果: "jquery-json"
var version =obj.version;//结果: 2.3

相关免费学习推荐:javascript视频教程

以上就是javascript如何实现json字符串与对象转换的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。