zoukankan      html  css  js  c++  java
  • json和string 之间的相互转换

    json和string 之间的相互转换

        <script type="text/javascript">
            
             //先认识一下js中json
            function showInfo(){
             var user={
               "name":"jack",                                 //字符串类型的值
               "age":18,                                      //数字类型的值
               "info":{"tel":"110","cellphone":"13613"},     //object 类型的值
               "address":                                    //数组类型的值;
               [
                  {"city":"meishang","postCode":"222222"},
                  {"city":"chengdu","postCode":"3333333"}
               
               ]
             } //user json over
             
             //简单调用
             alert(user.name);
             alert(user.info.tel);
             alert(user.address[0].city);
            }
            
           
          //------------------------------------------字符串对象转成json对象 
          function strToJson(){
            var str='{"json":"jsonData"}';
            alert(typeof(str));
            
            //方法一;JQ中的方法
            //缺陷:同样的,在我们的ie兼容模式下 会报错;而且还必须需严格遵守JSON规范
            var json=JSON.parse(str); //或者使用我们的 parseJSON
            alert(typeof(json));
            alert(json.json);
          
          }
          
          function strToJson2(){
           //eval('(' + jsonstr + ')');
           //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号 
           //注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。 
           var str='{"json":"jsonData"}';
           alert(typeof(str));
           var json=eval('('+str+')');
           alert(typeof(json));
           alert(json.json);
          
          }
          
          function strToJson3(){
           var str='{"json":"jsonData"}';
           alert(typeof(str));
           var json=(new Function("return"+str))(); //这个json中声明函数对象的一种方式滴呀
           alert(typeof(json));
           alert(json.json);
          }
          
          
          //------------------------------------------json转string类型
          function jsonToStr(){
            
             var obj={name:'jack'}; //对象
             var arr=[];
             arr.push(obj);         //我们都可以将对象 数组 转成我们的string
             
             alert(typeof(obj));
             alert(typeof(arr));
             
             var result1=JSON.stringify(obj);  //或者使用 toJSONString
             var result2=JSON.stringify(arr);  
             alert(typeof(result1));
             alert(typeof(result2));
             
             //缺陷就是在我们ie 兼容性模式下,找不到我们的JSON对象报错,
             
          }
          
          //当然我们也可以手写一个转化的方法
          function jsonToStr2(){
          
            var obj={name:'jack'}; //对象
            
            var jStr="{";
            for(var property in obj){
              jStr+="'"+property+"':'"+obj[property]+"'";
            }
            jStr+="}";
            alert(typeof(jStr));
            alert(jStr);
            
          }
          
          
          //当然最好还有我们的终结方法:使用插件;json2.js
          
        </script>
  • 相关阅读:
    Linux shell脚本基础学习详细介绍(完整版)二
    python读取单个文件操作
    【转载】HTTP 缓存的四种风味与缓存策略
    【转载】HTTP 响应头与状态码
    【转载】HTTP 请求头与请求体
    【转载】HTTP 基础与变迁
    3-2 从单词中获取单词出现的频率信息,并把他们写进对应的列表里
    170925_2 Python socket 创建UDP的服务器端和客户端
    170925_1 Python socket 创建TCP的服务器端和客户端
    2-2 列表推导同 filter 和 map 的比较
  • 原文地址:https://www.cnblogs.com/mc67/p/5607112.html
Copyright © 2011-2022 走看看