JSON详解
一直对json的用法迷迷糊糊,知道一些简单的用法,有时用起来很容易把自己搞混,今天专门查了一下相关的JSON的资料及用法,总结记录下来。
JSON并不是一种编程语言,可以理解成它是一种数据格式,虽然具有相同的语法形式,但是JSON并不属于JavaScript。而且,并不是所有的JavaScript才使用JSON,很多编程语言都有针对JSON的解析器和序列化器。
JSON的语法可以表示三种类型值:
1.简单值:使用与JavaScript相同的语法,可以在JSON中表示字符串、数值、布尔值和null,但是JSON不支持JavaScript中的特殊值undefied。
最简单的JSON数据形式就是简单值,如:10 “Hello”
JavaScript字符串与JSON字符串的最大区别在于,JSON字符串必须使用双引号,因为单引号会导致语法错误。
布尔值和null也是有效的JSON形式,但是,在实际应用中,JSON更多地用来表示更复杂的数据结构,而简单值只是整个数据结构中的一部分。
2.对象
JSON中的对象与JavaScript字面量有点区别。
//JavaScript对象字面量
var person = {
name:"Nack",
age:29
};
//JSON对象表示方式
{
"name":"Nack",
"age":29
}
与JavaScript的对象字面量相比,JSON对象有两个地方不一样。首先,没声明变量;其次,没有末尾的分号,JSON对象的属性必须加双引号,属性值可以是简单的也可以复杂。
{
"name":"Nack",
"age":29,
"school":{
"name":"Zhengzhou "
}
}
name属性属于两个不同的对象,对此没有啥影响。与JavaScript不同,JSON中对象的属
性名任何时候都必须带双引号。
- JSON数组
name属性属于两个不同的对象,对此没有啥影响。与JavaScript不同,JSON中对象的属性名任何时候都必须带双引号。
//JavaScript数组字面量
var values = [25,"hh",true];
在JSON中,可以采用同样的语法表示同一个数组:
[25,"hh",true]
JSON数组也没有变量和分号。把数组和对象结合起来,可以构成复杂的数据组合
[
{
"name":"Nack",
"age":29
},
{
"name":"Lee",
"age":21
}
]
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。