Rumah > hujung hadapan web > tutorial js > javascript如何实现json字符串与对象转换

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

coldplay.xixi
Lepaskan: 2023-01-04 09:35:52
asal
7110 orang telah melayarinya

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

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

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

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

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

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

json转换为对象

1

2

3

4

5

6

//json转换为对象

var obj = eval('(' + str + ')');

或者

var obj = str.parseJSON(); //json字符串转换为对象

或者

var obj = JSON.parse(str); //json字符串转换为对象

Salin selepas log masuk

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

对象转成json

1

2

3

4

5

//对象转成json

可以运用 toJSONString()或者JSON.stringify()将JSON对象转化为JSON字符串。

var str=obj.toJSONString(); //将对象转成json

或者

var last=JSON.stringify(obj); //将对象转成json

Salin selepas log masuk

以上,除了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

1

2

3

//对象转成json

var thing = {plugin: 'jquery-json', version: 2.3};//js对象

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

Salin selepas log masuk

json转成对象

1

2

3

4

//json转成对象

var  obj= $.evalJSON(str);

var name=obj.plugin;//js对象.属性,结果: "jquery-json"

var version =obj.version;//结果: 2.3

Salin selepas log masuk

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

Atas ialah kandungan terperinci javascript如何实现json字符串与对象转换. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan