json格式与javascript对象字面量和数组对象的区别
之前一直对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
}
]