第一種方式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>