最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

理解JSON:3分鐘課程

 更新時(shí)間:2011年10月28日 14:57:31   作者:  
如果你跟我一樣(我擔(dān)心你就是),那么,到目前為止,這應(yīng)該是你對(duì)JSON的經(jīng)驗(yàn)
  1. 兩個(gè)月前你從沒(méi)聽(tīng)說(shuō)過(guò)JSON
  2. 一個(gè)月前你聽(tīng)說(shuō)了這個(gè)詞但沒(méi)有留意
  3. 一周前你發(fā)現(xiàn)這個(gè)詞被提到多次,開(kāi)始想,沒(méi)錯(cuò) … 又有一些垃圾東西要學(xué)了
  4. 今天你被心靈深處的一個(gè)鬧鈴鬧醒,心想:這該死的json究竟是個(gè)什么東西?為什么突然間到處都是它了!

于是晚上我乘坐了一輛慢騰騰的公交回到家(周五通常都是很慢),然后給自己找了一大堆關(guān)于JSON資料。所以我可以文雅的帶你進(jìn)入JSON的大門。

這就開(kāi)始了 …

這幾個(gè)字母是什么意思?

JavaScript Object Notation.

[一個(gè)滑稽的名字。它應(yīng)該被稱作Lightweight Ecmascript Object Notation, 或簡(jiǎn)稱 'LEON'。 ;-) ]

它是個(gè)什么東西?

JSON是一種傳遞對(duì)象的語(yǔ)法,對(duì)象可以是name/value對(duì),數(shù)組和其他對(duì)象。

下面是一小段JSON代碼:

{"skillz": {
	"web":[
		{"name": "html",
		 "years": "5"
		},
		{"name": "css",
		 "years": "3"
		}],
	"database":[
		{"name": "sql",
		 "years": "7"
		}]
}}

你看懂了吧?那么當(dāng)你再看到它時(shí)就知道它是JSON了。主要部分:

花括弧,方括弧,冒號(hào)和逗號(hào)

  1. 花括弧表示一個(gè)“容器”
  2. 方括號(hào)裝載數(shù)組
  3. 名稱和值用冒號(hào)隔開(kāi)
  4. 數(shù)組元素通過(guò)逗號(hào)隔開(kāi)

把它想成“得了厭食癥的XML”

(如果你跟我一樣老,可以把它想成有層次關(guān)系的'.INI'文件)

(如果你是個(gè)自以為是的Lisp小丑,可以把它想成”S-expressions”,自以為是吧)

JSON很像XML,因?yàn)椋?/H3>
  1. 他們都“自我描述”,這意味著值都是可列舉的,是“人類可讀”的
  2. 都是有層級(jí)的。(例如你可以在值里再存放值)
  3. 都能被多種的編程語(yǔ)言解析和使用
  4. 都能使用AJAX方法來(lái)傳遞(例如httpWebRequest)

JSON跟XML不一樣,因?yàn)椋?/H3>
  1. XML里在元素的開(kāi)始和結(jié)尾處有尖括號(hào)和標(biāo)簽名:JSON使用花括號(hào),而且只在數(shù)據(jù)的開(kāi)始和結(jié)束時(shí)使用。
  2. JSON更簡(jiǎn)練,毫無(wú)疑問(wèn)更適合人類書(shū)寫(xiě),也許也能讓我們更快速的閱讀。
  3. JSON可以在JavaScript里簡(jiǎn)單的傳遞到eval()方法里使用
  4. JSON里有數(shù)組{每個(gè)元素沒(méi)有自己的名稱}
  5. 在XML里你可以對(duì)一個(gè)元素使用任意想要的名稱,在JSON里你不能使用Javascript里的保留字

可是為什么?它有什么好的?

當(dāng)你寫(xiě)ajax之類的東西時(shí),如果你使用JSON,你就勉去了手工拼寫(xiě)XML。更迅速。

同樣,當(dāng)你寫(xiě)ajax之類的東西時(shí),怎樣最簡(jiǎn)單?XML方式還是JSON方式:

XML方式:

  1. 取回一個(gè)XML文件
  2. 循環(huán)它,從中提取值
  3. 處理這些值,等

對(duì)比

JSON方式:

  1. 取回JSON字符串。
  2. ‘eval' JSON數(shù)據(jù)

它是面向?qū)ο蟮膯幔?/H3>

No,嚴(yán)格的說(shuō),不是。

就像是VB6里的面向?qū)ο笠粯?。它提供了很好的封裝機(jī)制,你可以使用它把數(shù)據(jù)和方法分離出來(lái),但它不提供任何的繼承,多型,接口,或其它類似的面向?qū)ο蟮臇|西

很顯然,它是使javascript變得更易于維護(hù),分析和復(fù)用的方向上前進(jìn)了一步。

Thomas Frank寫(xiě)了一個(gè)靈巧的javascript庫(kù),叫做classyJSON,它在JSON代碼上增加了繼承和定義范圍等特征。

它只是用在客戶端嗎?

是,也不是。在服務(wù)器端你可以容易的把對(duì)象序列化成JSON或反之。對(duì)于.net,程序員可以使用類似Json.net的類庫(kù)使這些操作自動(dòng)化(我估計(jì)是使用反射機(jī)制),或你使用自己的程序來(lái)做這些事,可能會(huì)更快些。

3分鐘將近結(jié)束….

就我所知,JSON是由一個(gè)叫做Douglas Crockford的家伙發(fā)明的。如果你喜歡的話,可以看一下他的網(wǎng)站,他非常的有趣。

這就是全部。

我在幾分鐘的時(shí)間里只能整理出這些東西——所有我說(shuō)的有些東西可能完全是錯(cuò)的。如果是這樣,請(qǐng)留言告訴我,告訴我我有多傻。我會(huì)很高興的糾正任何一個(gè)錯(cuò)誤。祝你好運(yùn)!

(邊注:如果你把 { 和 } 替換成”<” 和 “/>”,把”:” 換成 “/”… 你會(huì)得到一個(gè)非常像gaXml的東西。有趣的世界。

(邊注2:JasonAjax 都是希臘神話中的英雄。預(yù)告:另外一些即將出現(xiàn)的技術(shù)垃圾包括:Heracles, Perseus, Deucalion, Theseus
and Bellerophon。)

相關(guān)文章

  • 什么是json和jsonp,jQuery json實(shí)例詳詳細(xì)說(shuō)明

    什么是json和jsonp,jQuery json實(shí)例詳詳細(xì)說(shuō)明

    JSON能夠以非常簡(jiǎn)單的方式來(lái)描述數(shù)據(jù)結(jié)構(gòu),XML能做的它都能做,因此在跨平臺(tái)方面兩者完全不分伯仲.其實(shí)網(wǎng)上關(guān)于JSONP的講解有很多,但卻千篇一律,用自己的方式來(lái)闡釋一下這個(gè)問(wèn)題,看看是否有幫助
    2012-12-12
  • 淺談JsonObject中的key-value數(shù)據(jù)解析排序問(wèn)題

    淺談JsonObject中的key-value數(shù)據(jù)解析排序問(wèn)題

    下面小編就為大家分享一篇淺談JsonObject中的key-value數(shù)據(jù)解析排序問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-12-12
  • JSON 編輯器實(shí)現(xiàn)代碼

    JSON 編輯器實(shí)現(xiàn)代碼

    用來(lái)簡(jiǎn)單的查看、輔助修改繁雜的JSON數(shù)據(jù),格式化或者壓縮JJSON,當(dāng)然也可以自由即時(shí)編輯一些簡(jiǎn)單的JSON數(shù)據(jù)。
    2009-12-12
  • js解析與序列化json數(shù)據(jù)(二)序列化探討

    js解析與序列化json數(shù)據(jù)(二)序列化探討

    上一節(jié)我們講解了JSON.stringify()的基本用法,這一節(jié)我們來(lái)重點(diǎn)探討一下序列化,單獨(dú)或組合使用這兩個(gè)參數(shù)(過(guò)濾器/數(shù)組),可以更全面深入地控制JSON的序列化,感興趣的朋友可以了解下,或許對(duì)你學(xué)習(xí)json有所幫助
    2013-02-02
  • 理解JSON:3分鐘課程

    理解JSON:3分鐘課程

    如果你跟我一樣(我擔(dān)心你就是),那么,到目前為止,這應(yīng)該是你對(duì)JSON的經(jīng)驗(yàn)
    2011-10-10
  • 詳解Java中String JSONObject JSONArray List<實(shí)體類>轉(zhuǎn)換

    詳解Java中String JSONObject JSONArray List<實(shí)體類>轉(zhuǎn)換

    這篇文章主要介紹了詳解String JSONObject JSONArray List<實(shí)體類>轉(zhuǎn)換,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 看了就知道什么是JSON

    看了就知道什么是JSON

    看了就知道什么是JSON...
    2007-12-12
  • IE8 原生JSON支持

    IE8 原生JSON支持

    你可能已經(jīng)從這篇文章的標(biāo)題中猜到了,Internet Explorer 8(目前是Beta2)提供了原生JSON的解析和序列化。
    2009-04-04
  • 深入分析JSON編碼格式提交表單數(shù)據(jù)

    深入分析JSON編碼格式提交表單數(shù)據(jù)

    這篇文章主要介紹了深入分析JSON編碼格式提交表單數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2015-06-06
  • 解讀JSON的三種格式

    解讀JSON的三種格式

    這篇文章主要介紹了解讀JSON的三種格式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01

最新評(píng)論

原平市| 崇礼县| 偏关县| 和田市| 庆阳市| 阿勒泰市| 丰城市| 合水县| 延川县| 安达市| 喀什市| 西平县| 云和县| 鄂尔多斯市| 十堰市| 绥阳县| 泸西县| 新泰市| 通江县| 内丘县| 白山市| 霍城县| 永济市| 佛山市| 佛教| 海城市| 德安县| 盐亭县| 交口县| 潢川县| 新源县| 张北县| 来安县| 光泽县| 都昌县| 开平市| 曲松县| 抚州市| 潮安县| 旌德县| 临汾市|