JSON解析

第一種方式JSON.parsejavascript

$.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));

第二種方式php

概述:eval()是系統默認的函數,是做爲window對象的一個方法、所以能夠省略window直接使用;html

             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();")java

提示:eval()能夠將字符串轉換爲我們語義上的代碼的含義ajax

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

第三種方式數組

 

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

 

提示:JSON它是系統內置的對象、eval()它也是系統內置的函數能夠將字符串轉換爲語義;函數

       Function系統內置的構造函數,咱們也能夠拿過來直接使用post

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>
相關文章
相關標籤/搜索