簡單來說,JSON可以分爲兩大類, 基本數據類型和複雜數據類型。
1. Primitive Types
- String
- Number
- Boolean
- Null
2. Structure Type
- Object
- Array
String: 雙引號相括,包含Unicode 字符,可以用escaped。
Number: 有整數,浮點數,實數, 指數,負數,但不包括 16 進制和 8 進制數.
Boolean: true 或 false.
Null: 空
Array
- 一個有序的列表.
- 包含在括號裏.
- 每個值之間以逗號隔開.
- 數組值可以是任何有效的數據類型.
- 通過索引來取數據.
- 可以包含對象.
Object
- 無序的集合,以鍵/值對的形式存在.
- 每對都包含在括號中.
- 鍵和值以冒號隔開.
- 名字定義在雙引號中,並卻可以包含任何Unicode字符.
- 值不能是function.
- 值可以是任何類型.
- 對象值可以用 “.” 操作符來獲取.
- 可以使用 eval() 函數來把JSON 文本轉換成 JSON 對象.
舉例
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
.border {
border: 1px solid #000;
}
</style>
<script type="text/javascript">
//create an Array which contains type and phoneNumber
var phoneNumber = [{
"type": "Home",
"number": 919461162949
},
{
"type": "Office",
"number": "123456789"
}]
function getPhoneInfo()
{
var displayDiv = document.getElementById("displayDiv");
var detailTable = document.createElement("table");
detailTable.setAttribute("class", "border");
var thType = document.createElement("th");
thType.setAttribute("class", "border");
thType.appendChild(document.createTextNode("Type"));
detailTable.appendChild(thType);
var thNumber = document.createElement("th");
thNumber.setAttribute("class", "border");
thNumber.appendChild(document.createTextNode("Number"));
detailTable.appendChild(thNumber);
for (var i = 0; i < phoneNumber.length; i++)
{
var row = document.createElement("tr");
var colType = document.createElement("td");
colType.setAttribute("class", "border");
var colNumber = document.createElement("td");
colNumber.setAttribute("class", "border");
//Read data from Array
colType.appendChild(document.createTextNode(phoneNumber[i].type));
colNumber.appendChild(document.createTextNode(phoneNumber[i].number));
row.appendChild(colType);
row.appendChild(colNumber);
detailTable.appendChild(row);
}
displayDiv.appendChild(detailTable);
}
</script>
</head>
<body onload="getPhoneInfo()">
<form id="form1" runat="server">
<div id="displayDiv"></div>
</form>
</body>
</html>
輸出結果
原文鏈接:http://www.c-sharpcorner.com/UploadFile/3d39b4/data-types-in-json/。