之前一直對json格式語法分不清,今天查了一些資料,做總結如下:
json對象與javascript對象字面量
javascript對象字面量
//開發人員創建對象字面量的標准方式
var person={ name:"xx", age:10 }; //也可以這樣寫
var person={ "name":"xx", "age":10 };
上述對象字面量的json格式:
{ "name":"xx", "age":10 }
json對象與javascript對象字面量區別:
1.json沒有聲明變量(json中沒有變量的概念)
2.沒有末尾的分號(因為這不是javascript語句,所有不需要分號)
3.json對象的屬性必須加雙引號,js中可加可不加
json屬性的值可以是簡單值,也可以是復雜類型的值,所以可以在對象中嵌入對象,像下面這樣
{ "name":"xx", "age":10, "school":{ "name":"bb", "location":"aa" } }
注意:在同一個對象中絕對不能出現兩個同名屬性,上面這樣由於name屬性分別屬於不同的對象,所以完全沒有問題。再一次提醒一遍,json中對象的屬性名任何時候都必須加上雙引號,把雙引號寫成單引號或者不加雙引號都是錯誤的。
json數組與Array對象
javascript中的數組字面量
var arry=[10,'balck',false];
json數組
[10,'balck',false]
注意:json數組也沒有變量和分號
json數組與json對象結合起來構成更復雜的json數據集合
[ { "name":"zhangli", "age":20 }, { "name":"wangqiang", "age":25 }, { "name":"lisi", "age":23 } ]