码迷,mamicode.com
首页 > Web开发 > 详细

JSON解析

时间:2017-12-02 16:14:57      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:一个   class   val   ext   练习   三种方式   $.ajax   直接   因此   

第一种方式

$.ajax({
    "url":"result/json1.php",
     "type":"post",
      "success":function (data) {
      //①将JSON形式的字符串变为对象(JSON)
     var json = JSON.parse(data);
      $("h1").html(json.info);
            }
   })
var obj = {
              "name":"哈哈",
              "age":12
        }
console.log(typeof obj);
console.log( typeof JSON.stringify(obj));

技术分享图片

第二种方式

概述:eval()是系统默认的函数,是作为window对象的一个方法、因此可以省略window直接使用;

             eval()这个函数很‘变态’;可以将字符串真的变为语义层面上的代表;

 

$.ajax({
              "url":"result/json1.php",
               "type":"post",
               "success":function (data) {
                 var json = eval("("+data+")");
                 console.log(typeof json);
                  $("h1").html(json.name);
               }
        });

eval("function fun(){console.log(‘我是一个函数‘)};fun();")

技术分享图片

提示:eval()可以将字符串转换为咱们语义上的代码的含义

       ②eval(‘(‘+data+’)’);

第三种方式

 

$.ajax({
              "url":"result/json1.php",
               "type":"post",
               "success":function (data) {
                 var json = Function("return"+data)();
                 $("h1").html(json.ceo);
               }
        });

 

提示:JSON它是系统内置的对象、eval()它也是系统内置的函数可以将字符串转换为语义;

       Function系统内置的构造函数,我们也可以拿过来直接使用

json练习

 

result/json1.php
<?php
  $arr = array("name"=>"百度","info"=>"上市公司","ceo"=>"老板","age"=>30);
  //将数组转换为JSON返回给前端
  print_r(json_encode($arr));
?>
    <h1></h1>
    <script type="text/javascript">
        $.ajax({
               "url":"result/json1.php",
               "type":"post",
               "success":function (data) {
                /* ①
                  将JSON形式的字符串变为对象(JSON)
                     var json = JSON.parse(data);
                     $("h1").html(json.info);
                     console.log(data);
                   ②
                    var json = eval("("+data+")");
                   $("h1").html(json.name);
                   console.log(typeof json);
                   console.log(json);
                   eval("function fun(){console.log(‘我是一个函数‘)};fun();")
                    ③
                   var json = Function("return"+data)();
                   $("h1").html(json.ceo);
                   console.log(json);
                 */

               }
        });
    </script>

 

JSON解析

标签:一个   class   val   ext   练习   三种方式   $.ajax   直接   因此   

原文地址:http://www.cnblogs.com/smivico/p/7954190.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!