JavaScript JSON
javascript json
json 是存儲和傳輸數(shù)據(jù)的格式。
json 經(jīng)常在數(shù)據(jù)從服務器發(fā)送到網(wǎng)頁時使用。
1. 什么是 json?
- json 指的是 javascript object notation
- json 是輕量級的數(shù)據(jù)交換格式
- json 獨立于語言
- json 是“自描述的”且易于理解
2. json 范例
json 語法定義了一個雇員對象:包含三條員工記錄的數(shù)組(對象):
json 范例
{ "employees":[ {"firstname":"bill", "lastname":"gates"}, {"firstname":"steve", "lastname":"jobs"}, {"firstname":"alan", "lastname":"turing"} ] }
3. json 格式評估為 javascript 對象
json 格式在語法上與創(chuàng)建 javascript 對象的代碼相同。
由于這種相似性,javascript 程序可以很容易地將 json 數(shù)據(jù)轉換成本地的 javascript 對象。
4. json 語法規(guī)則
- 數(shù)據(jù)是名稱/值對
- 數(shù)據(jù)由逗號分隔
- 花括號保存對象
- 方括號保存數(shù)組
5. json 數(shù)據(jù) - 名稱和值
json 數(shù)據(jù)的書寫方式是名稱/值對,類似 javascript 對象屬性。
名稱/值對由(雙引號中的)字段名構成,其后是冒號,再其后是值:
"firstname":"bill"
json 名稱需要雙引號。javascript 名稱不需要。
6. json 對象
json 對象是在花括號內書寫的。
類似 javascript,對象能夠包含多個名稱/值對:
{"firstname":"bill", "lastname":"gates"}
7. json 數(shù)組
json 數(shù)組在方括號中書寫。
類似 javascript,數(shù)組能夠包含對象:
"employees":[ {"firstname":"bill", "lastname":"gates"}, {"firstname":"steve", "lastname":"jobs"}, {"firstname":"alan", "lastname":"turing"} ]
在上面的例子中,對象 "employees" 是一個數(shù)組。它包含了三個對象。
每個對象代表一個人的一條記錄(帶有名和姓)。
8. 把 json 文本轉換為 javascript 對象
json 的通常用法是從 web 服務器讀取數(shù)據(jù),然后在網(wǎng)頁中顯示數(shù)據(jù)。
為了簡單起見,可以使用字符串作為輸入演示。
首先,創(chuàng)建包含 json 語法的 javascript 字符串:
var text = '{ "employees" : [' + '{ "firstname":"bill" , "lastname":"gates" },' + '{ "firstname":"steve" , "lastname":"jobs" },' + '{ "firstname":"alan" , "lastname":"turing" } ]}';
然后,使用 javascript 的內建函數(shù) json.parse() 來把這個字符串轉換為 javascript 對象:
var obj = json.parse(text);
最后,請在您的頁面中使用這個新的 javascript 對象:
范例
<p id="demo"></p> <script> document.getelementbyid("demo").innerhtml = obj.employees[1].firstname + " " + obj.employees[1].lastname; </script>