1. 程式人生 > >原生ajax接收json字符串(簡單介紹)

原生ajax接收json字符串(簡單介紹)

object 如果 圖片 存在 技術分享 數據交換 http請求 形式 eve

什麽是json?

JSON的全稱是 Javascript Object Notation(javascript對象表示法),是基於javascript對象字面量,如果單從眼睛看,JSON裏的數據是被保存在花括號裏面-- {},如果在用途上面進一步分析,JSON是一種數據交換格式。JSON內部以 名稱:值這種格式排列,如下面的json1,就是一個json對象。

var json2={"name":"張三","age":21,"sex":"boy"}

什麽是json字符串?

如其字面意思,給json兩邊加上雙引號(或者單引號),為了避免與內部的雙引號沖突,我們這外面放單引號,就成了json字符串了,如下面的json2

var json2=‘{"name":"張三","age":21,"sex":"boy"}‘

方法一:使用eval方法將json字符串解析成為json對象

evel不存在兼容性問題,但是會有安全漏洞。

方法二:使用JSON.parse方法將json字符串解析稱為json對象

JSON.parse不存在安全漏洞,但是會有兼容性,IE8及以下不支持。

如圖:

技術分享圖片

運行結果

技術分享圖片

 //創建對象XMLHttpRequest
          var ajax=new XMLHttpRequest();
          //創建http請求,設置請求地址
          ajax.open("get","testservlet.do");
          
//發送請求 (get為null post為參數) ajax.send(null); //給ajax設置事件(這裏最多感知4[1-4]個狀態) ajax.onreadystatechange = function(){ //5.獲取響應 //responseText 以字符串的形式接收服務器返回的信息 //console.log(ajax.readyState); if(ajax.readyState == 4 && ajax.status == 200){
//使用JSON.parse方法將json字符串解析稱為json對象 var data = JSON.parse(ajax.responseText); console.log(data.data); //使用eval方法將json字符串解析成為json對象 var data1=eval("("+ajax.responseText+")"); console.log(data1.data); } }

原生ajax接收json字符串(簡單介紹)