之前一直对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 } ]