转换json和字符串的一些方法

Posted Leaves丶幻

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转换json和字符串的一些方法相关的知识,希望对你有一定的参考价值。

将字符串转换成json对象的方法:
var str = \'{"name1":"value1","name2":"value2"}\';(json的转换格式必须是单引号套双引号)
1.JSON.parse(str);
2.eval("("+str+")");
3.var json = (new Function("return"+str)());
将json转换成字符串:
1.JSON.stringgify(json);
 
兼容问题
JSON.parse()转化字符串成json对象在IE7及以下浏览器不支持(其他两种没问题)
可以引进下面的js文件解决这个问题。
 
强制转换:
 1 <!DOCTYPE html>
 2 <htmllang="en">
 3 <head>
 4 <metacharset="UTF-8"/>
 5 <title>Document</title>
 6 </head>
 7 <body>
 8 </body>
 9 <scripttype="text/javascript">
10 // 不符合json转换格式的字符串
11 var string ="{\'age\':28,\'sex\':\'boy\'}";
12 // 用json的强制转换方法来转换这个字符串(new Function("return"+str)());
13 var json =(newFunction("return"+string))();
14 console.log(json.sex);
15 var li = document.createElement("li");
16 li.innerText="name:"+json.sex +",age:"+ json.age;
17 document.body.appendChild(li);
18 </script>
19 </html>
View Code

 

效果:
 
转换json数据的方法:
json就是对象(object),对象就是json;
 1 <!DOCTYPE html>
 2 <htmllang="en">
 3 <head>
 4 <metacharset="UTF-8"/>
 5 <title>转换json数据</title>
 6 </head>
 7 <body>
 8 </body>
 9 <scripttype="text/javascript"src="jquery-3.1.1.min.js"></script>
10 <scripttype="text/javascript">
11 // 也是利用强制转换
12 data ="{root:[{name:\'1\',value:\'0\'},{name:\'11\',value:\'110\'},{name:\'1123\',value:\'广东\'},{name:\'1124\',value:\'附件\'}]}";
13 console.log(data);
14 var json =(newFunction("return"+data))();
15 console.log(json.root);
16 $.each(json.root,function(i,v){
17 console.log(v);
18 var h = v;
19 for(key in h){
20 console.log(h[key]);
21 var $span = $("<span></span><br/>");
22 $span.text(h[key]);
23 $("body").append($span);
24 }
25 });
26 </script>
27 </html>
View Code

 

效果:
 



 

以上是关于转换json和字符串的一些方法的主要内容,如果未能解决你的问题,请参考以下文章

java中把json怎么转换成数组

怎么把json字符串转成数组对象

jquery 实现 Json 的一些转换方法

如何从片段中的 JSON 响应中的对象获取数据

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。