先學(xué)習(xí)阮大神的 數(shù)據(jù)類型和Json格式
一、
js中解析JSON的方式
eval()
JSON.parse
var jsondata = "{"staff":[{"name":"小紅","age":16},{"name":"小明","age":20},{"name":"小芳","age":18}]}" var jsonobj = eval("(" + jsondata + ")") alert( jsonobj.staff[0].name);
var jsondata = "{"staff":[{"name":"小紅","age":16},{"name":"小明","age":20},{"name":"小芳","age":18}]}" var jsonobj = JSON.parse(jsondata); alert( jsonobj.staff[0].name);
兩種效果其實是一樣的,但是我們用第二種,因為eval()不但解析JSON字符串還會執(zhí)行字符串中的js方法
ps:實際中盡量不要用eval()
二、
在線JSON校驗工具 http://jsonlint.com/
三、
{
"success":true, "msg":"xxx", "data":"xxx"
}
success:邏輯是否成功的標(biāo)記(如:ajax請求過程中,請求是否成功的標(biāo)記),msg:"xxx"(如:msg作為請求返回值),errormsg:success為false時的錯誤信息,data:請求返回的數(shù)據(jù)。
四、demo.html中解析json,并將相關(guān)信息顯示在頁面上。
if(request.status===200){ var data=JSON.parse(request.responseText); if(data.success){ document.getElementById("searchResult").innerHTML=data.msg; }else{ document.getElementById("searchResult").innerHTML="出現(xiàn)錯誤:"+data.msg; } }else{ alert("發(fā)生錯誤"+request.status); }
PHP中
JSON 數(shù)據(jù)格式和 Serialize 數(shù)據(jù)格式的異同和使用
相同點:
1、都是把其他數(shù)據(jù)類型轉(zhuǎn)換成一個可以傳輸?shù)淖址ǔ速Y源類型) 2、都是結(jié)構(gòu)性數(shù)據(jù)
異同點:
1、Serialize 序列化后的數(shù)據(jù)格式保存數(shù)據(jù)原有類型 2、JSON 數(shù)據(jù)格式要簡潔,相比Serialize 序列化之后的數(shù)據(jù)格式
使用場景:
1、JSON 適合數(shù)據(jù)量大,不要求保留原有類型的情況 2、Serialize 適合存儲帶有加密方式的數(shù)據(jù)串,防止數(shù)據(jù)被中途截取,反序列化破解
參考
Ajax全接觸
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/82585.html
摘要:簡介是用于結(jié)構(gòu)化數(shù)據(jù)序列化的一種文本格式,包含種基礎(chǔ)類型字符串,數(shù)字,布爾和和兩種結(jié)構(gòu)類型對象和數(shù)組。對象是一個由零或者多個名值對組成的無序集合,其中名值對中名是字符串類型,值則可以是字符串,數(shù)字,布爾,,對象或數(shù)組類型。 Json JavaScript Object Notation (JSON)是一個輕量級的,基于文本的,跨語言的數(shù)據(jù)交換格式。它從ECMAScript編程語言標(biāo)準(zhǔn)(...
摘要:基于對象字面量,但是獨立于任何編程語言,真正重要的是表示法本身,所以在學(xué)習(xí)之前不必先學(xué)習(xí)。鍵必須是字符串,值可以是合法的數(shù)據(jù)類型字符串?dāng)?shù)字對象數(shù)組布爾值或。布爾類型中的布爾值僅可使用小寫形式或,其他任何寫法都會報錯。 什么是JSON JSON全稱是Javascript Object Notation(對象表示法),是一種在不同平臺間傳遞數(shù)據(jù)的文本格式(數(shù)據(jù)交換格式)。常見的數(shù)據(jù)交換格式...
摘要:基于對象字面量,但是獨立于任何編程語言,真正重要的是表示法本身,所以在學(xué)習(xí)之前不必先學(xué)習(xí)。鍵必須是字符串,值可以是合法的數(shù)據(jù)類型字符串?dāng)?shù)字對象數(shù)組布爾值或。布爾類型中的布爾值僅可使用小寫形式或,其他任何寫法都會報錯。 什么是JSON JSON全稱是Javascript Object Notation(對象表示法),是一種在不同平臺間傳遞數(shù)據(jù)的文本格式(數(shù)據(jù)交換格式)。常見的數(shù)據(jù)交換格式...
摘要:一什么是為什么使用是機(jī)制的一種替代方案。這種情況下使用就會有更加方便。的數(shù)據(jù)結(jié)構(gòu)一般為三部分組成頭部一般包含簽名的算法和令牌的屬性負(fù)載實際需要傳遞的數(shù)據(jù)一般不加密,因此不要把重要信息放在里面簽名部分是對前兩部分的簽名,防止數(shù)據(jù)篡改。 一、什么是JSON Web Token? 1、為什么使用JSON Web Token JSON Web Token是cookie session機(jī)制的一種...
閱讀 2876·2021-11-22 14:45
閱讀 3029·2021-09-10 11:26
閱讀 3402·2021-09-07 10:18
閱讀 2286·2019-08-30 14:08
閱讀 702·2019-08-29 12:22
閱讀 1454·2019-08-26 13:48
閱讀 2701·2019-08-26 10:24
閱讀 1226·2019-08-23 18:35