走近JSON

JSON


1. 什麼是JSON?

  • JSON 指的是 JavaScript 對象表示法(JavaScript Object Notation)

  • JSON 是輕量級的文本數據交換格式

  • JSON 獨立於語言,使用 Javascript語法來描述數據對象,但是 JSON 仍然獨立於語言和平臺

  • JSON 具有自我描述性,更易理解

簡單地說 ,JSON 可以將 JavaScript 對象中表示的一組數據轉換爲字符串,然後就可以在網絡或者程序之間輕鬆地傳遞這個字符串,並在需要的時候將它還原爲各編程語言所支持的數據格式,例如在 PHP 中,可以將 JSON 還原爲數組或者一個基本對象。在用到AJAX時,如果需要用到數組傳值,這時就需要用JSON將數組轉化爲字符串。


2. JSON語法規則

  • 數據在名稱/值對中
  • 數據由逗號分隔
  • 大括號保存對象
  • 中括號保存數組

JSON 使用 JavaScript 語法,但是 JSON 格式僅僅是一個文本。文本可以被任何編程語言讀取及作爲數據格式傳遞。


3.JSON名稱/值對

  • JSON 數據格式爲鍵/值對,就像 JavaScript 對象屬性。
    鍵/值對包括字段名稱(在雙引號中),後面一個冒號,然後是值:
“name”:“Merry”

4.JSON對象

  • JSON 對象在大括號 {} 中書寫
  • 對象可以包含多個名稱/值對(key/value(鍵/值)對)
    key 必須是字符串,value 可以是合法的 JSON 數據類型(字符串, 數字, 對象, 數組, 布爾值或 null):
{ "name":"百度" , "url":"www.baidu.com" }

5.JSON數組

  • JSON 數組在中括號中書寫
  • 數組可包含多個對象

JSON數組:

[ "Google", "Runoob", "Taobao" ]

JSON對象中的數組:

{
"sites": [{ "name":"菜鳥教程" , "url":"www.runoob.com" }, 
{ "name":"google" , "url":"www.google.com" }, 
{ "name":"微博" , "url":"www.weibo.com" }]
}

6.JSON文件

  • JSON 文件的文件類型是 “.json”
  • JSON 文本的 MIME 類型是 “application/json”

7.JSON字符串轉換爲JavaScript對象

JSON 最常見的用法之一,是從 web 服務器上讀取 JSON 數據作爲文件或作爲 HttpRequest ,將 JSON 數據轉換爲 JavaScript 對象,然後在網頁中使用該數據。

轉換前首先了解兩個函數:

函數 描述
JSON.stringify() 用於將 JavaScript 值轉換爲 JSON 字符串。
JSON.parse() 用於將一個 JSON 字符串轉換爲 JavaScript 對象

實例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JSON轉換爲JS對象</title>
</head>
<body>

<h2>JSON 字符串創建對象</h2>
<p id="demo"></p>
<script>
var text = '{ "sites" : [' +
	'{ "name":"Runoob" , "url":"www.runoob.com" },' +
	'{ "name":"Google" , "url":"www.google.com" },' +
	'{ "name":"Taobao" , "url":"www.taobao.com" } ]}';
	
obj = JSON.parse(text);  //利用轉換函數
document.getElementById("demo").innerHTML = obj.sites[1].name + " " + obj.sites[1].url;  
</script>

</body>
</html>

運行結果爲:

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章