這次帶給大家JS操作JSON詳細介紹,JS操作JSON的注意事項有哪些,下面就是實戰案例,一起來看一下。
JSON是一種輕量級的資料交換格式,採用完全獨立於語言的文字格式,是理想的資料交換格式。本文為大家介紹JS操作JSON方法總結,非常不錯具有參考借鑒價值,有興趣的朋友一起學習吧
##JSON概述:
JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式,採用完全獨立於語言的文字格式,是理想的資料交換格式。同時,JSON是 JavaScript 原生格式,這意味著在 JavaScript 中處理 JSON資料不需要任何特殊的 API 或工具包。
JSON:JavaScript物件表示法(JavaScript Object Notation)。
JSON 是儲存和交換文字資訊的語法。類似 XML。 JSON 比 XML 更小、更快,也更容易解析。JSON 語法規則
JSON 語法是 JavaScript 物件表示法語法的子集。 資料在名稱/值對中資料由逗號分隔花括號保存物件#方括號保存陣列好了,以上所述不是本文的重點,本文主要是對JS操作JSON的方法做下總##結#。 在JSON中,有兩種結構:物件和陣列。
1. 一個物件以「{」(左括號)開始,「}」(右括號)結束。每個「名稱」後面跟著一個「:」(冒號);「『名稱/值' 對」之間使用「,」(逗號)分隔。名稱用引號括起來;值如果是
字串則必須用括號,數值型則不需要。例如:var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"};
例如:
var jsonranklist=[{"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"},{"xlid":"zd","xldigitid":123456,"topscore":1500,"topplaytime":"2009-11-20"}];
為了方便處理JSON數據,JSON提供了json.js包,下載地址:http://www.json.org/json.js
在資料傳輸過程中,json是以文本,即字串的形式傳遞的,而JS操作的是JSON對象,所以,JSON對象和JSON字串之間的相互轉換是關鍵。例如:
JSON字串:var str1 = '{ "name": "cxh", "sex": "man" }';
var str2 = { "name": "cxh", "sex": "man" };
一、JSON字串轉換為JSON物件要使用上面的str1,必須使用下面的方法先轉換成JSON物件:
//由JSON字符串转换为JSON对象 var obj = eval('(' + str + ')');
或
var obj = str.parseJSON(); //由JSON字符串转换为JSON对象
或者
var obj = JSON.parse(str); //由JSON字符串转换为JSON对象
然後,就可以這樣讀取:
Alert(obj.name); Alert(obj.sex);
如果obj本來就是一個JSON對象,那麼使用eval()函數轉換後(即使是多次轉換)還是JSON對象,但是使用parseJSON()函數處理後會有問題(拋出語法異常)。
二、可以使用toJSONString()或全域方法JSON.stringify()將JSON物件轉換為JSON字串。 例如:
var last=obj.toJSONString(); //将JSON对象转化为JSON字符
或
var last=JSON.stringify(obj); //将JSON对象转化为JSON字符 alert(last);
腳本之家友情提醒大家需要注意問題:上面的幾個方法中,除了eval()函數是js自帶的之外,其他的幾個方法都來自json.js套件。新版的JSON 修改了API,將JSON.stringify() 和JSON.parse() 兩個方法都注入到了Javascript 的內建物件裡面,前者變成了Object.toJSONString(),而後者變成了String. parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,則表示您的json套件版本太低。
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是JS操作JSON詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!