## json簡介
JSON全程"JavaScript Object Notation",意思是JavaScript對象表示法,它是一種基于文本,獨立于語言的輕量級數據交換格式。XML也是一種數據交換格式,為什么沒有選擇XML呢?因為XML雖然可以作為跨平臺的數據交換格式,但是在JS中處理XML非常不方便,同時XML標記比數據多,增加了交換產生的流量,而json沒有附加任何標記,在JS中可作為對象處理,所以更傾向于JSON來交換數據。
## json的兩種結構
JSON有兩種表示結構:<b>對象和數組</b>
對象結構以”{”大括號開始,以”}”大括號結束。中間部分由0或多個以”,”分隔的”key(關鍵字)/value(值)”對構成,關鍵字和值之間以”:”分隔,語法結構如代碼。
~~~
{
key1:value1,
key2:value2,
...
}
~~~
數組結構以”\[”開始,”\]”結束。中間由0或多個以”,”分隔的值列表組成,語法結構如代碼。
~~~
[
{
key1:value1,
key2:value2
},
{
key3:value3,
key4:value4
}
]
~~~
## json字符串
~~~
var Str = "this is a String"; //字符串
var jsonObj = {Name:"dick",age:"20",ID:"160512"}; //json對象
var jsonStr = " {Name:"dick",age:"20",ID:"160512"}"; //json字符串
//json字符串指的是符合json格式要求的js字符串
~~~
## 在JS中如何使用JSON
JSON是JS的一個子集,所以可以在JS中輕松地讀,寫JSON。讀和寫JSON都有兩種方法,分別是利用”.”操作符和“\[key\]”的方式。
我們首先定義一個JSON對象,代碼如下。
~~~
var obj = {
1: "value1",
"2": "value2",
count: 3,
person: [ //數組結構JSON對象,可以嵌套使用
{
id: 1,
name: "張三"
},
{
id: 2,
name: "李四"
}
],
object: { //對象結構JSON對象
id: 1,
msg: "對象里的對象"
}
};
~~~
1,從JSON中讀數據
~~~
function ReadJSON() {
alert(obj.1); //會報語法錯誤,可以用alert(obj["1"]);說明數字最好不要做關鍵字
alert(obj.2); //同上
alert(obj.person[0].name); //或者alert(obj.person[0]["name"])
alert(obj.object.msg); //或者alert(obj.object["msg"])
}
~~~
2,向JSON中寫數據
比如要往JSON中增加一條數據,代碼如下:
~~~
function Add() {
//往JSON對象中增加了一條記錄
obj.sex= "男" //或者obj["sex"]="男"
}
~~~
增加數據后的json對象如圖

3,修改JSON中的數據
我們現在要修改JSON中count的值,代碼如下:
~~~
function Update() {
obj.count = 10; //或obj["count"]=10
}
~~~
4,刪除JSON中的數據
我們現在實現從JSON中刪除count這條數據,代碼如下:
~~~
function Delete() {
delete obj.count;
}
~~~
- 第一章.git
- 1-1 git基本命令
- 1-2 ssh的配置
- 1-3 版本回退
- 第二章 markdown基本語法
- 第三章 HTML
- 3-1 HTML標簽概念
- 3-2 html結構
- 3-3 基本標簽
- 3-4 input輸入框
- 3-5 table表格
- 第四章 CSS
- 4-1 CSS基礎
- 4-2 基本樣式
- 4-3 選擇器
- 4-4 盒子模型
- 4-5 進階樣式
- 4-6 樣式繼承
- 4-7 浮動
- 4-8 定位
- 4-8 水平垂直居中
- 4-9 特殊情況
- 4-10 表單
- 4-11 2D效果
- 4-12 BFC
- 第五章 JavaScript筆記
- 5-1JS基礎
- 5-2 DOM介紹
- 5-3 DOM操作詳解
- 5-4 JSON詳解
- 第六章 jQuery
- 6-1 jQuery概述
- 6-2 jQuery選擇器
- 6-3 jQuery常用操作
- 第七章 AJAX
- 7-1 原生ajax
- 7-2 http,get,post
- 7-3 跨域
- 7-4 jQuery-ajax
- Web前端命名規范