zoukankan      html  css  js  c++  java
  • 转换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
    效果:
     



  • 相关阅读:
    PAT Basic 1077 互评成绩计算 (20 分)
    PAT Basic 1055 集体照 (25 分)
    PAT Basic 1059 C语言竞赛 (20 分)
    PAT Basic 1072 开学寄语 (20 分)
    PAT Basic 1049 数列的片段和 (20 分)
    蓝桥杯BASIC-13 数列排序
    蓝桥杯入门——3.序列求和
    蓝桥杯入门——2.圆的面积
    蓝桥杯入门——1.Fibonacci数列
    树的总结(遍历,BST,AVL原型,堆,练习题)
  • 原文地址:https://www.cnblogs.com/ChenChunChang/p/6615977.html
Copyright © 2011-2022 走看看