詳細說明JSON數據的種種功能說明
JSON數據的訪問相對于XML要簡單很多。可以如同JavaScript對象一樣訪問JSON數據。例如在上述JSON數據中,我們要訪問第一個學生的姓名,只要寫:StudentsJSON.student[0].name就可以了。
實例研究
雅虎為我們提供了一個圖片搜索Web服務,URL為:http://search.yahooapis.com/ImageSearchService/V1/imageSearch。這個Web服務支持返回JSON格式數據。該Web服務接受的參數為如下
只要動態構建該URL并加入動態創建的script標簽中的src屬性中即可獲得Web服務返回的JSON數據。查詢的結果都在ResultSet.Result[0]數組中。當我們構建好查詢網頁后,可以在本機上用IE或Firefox等瀏覽器直接打開該網頁并測試。
實驗結果及比較
可以看到采用動態script標簽技術結合JSON數據交換格式的方法使得跨域訪問Web服務非常的容易。然而在Web服務中使用JSON數據交換格式相對于XML又有那些優缺點呢?下面從五個方面進行分析。#t#
可讀性:JSON和XML的可讀性可謂不相上下,JSON采用常見的語法數據結構,XML使用的是規范的標簽形式。可擴展性:XML天生有很好的擴展性,而JSON也不遜于XML。
編碼難度:XML有豐富的編碼工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的編碼明顯比XML容易許多,即使不借助工具也能寫出JSON的代碼,可是要寫好XML就不太容易了。
解碼難度:XML的解析得考慮子節點父節點,讓人頭昏眼花,而JSON的解析難度幾乎為0。這一點XML輸的真是沒話說。流行度:XML已經被業界廣泛的使用,而JSON才剛剛開始,但是在Ajax這個特定的領域。
未來的發展也許XML要讓位于JSON。到時Ajax就應該變成Ajaj (Asynchronous JavaScript and JSON)了。