1、JSON:JavaScript对象表示法(JavaScript Object Notation)
(1)JSON是存储和交换文本信息的语法,类似XML。它采用键值对的方式来组织,已与人们阅读和编写,同时也易于机器解析和生成
(2)JSON是独立于语言的,也就是说不管什么语言,都可以解析json,只需要按照json的规则来就行
2、JSON与XML比较
(1)json的长度和xml格式比起来很短小
(2)json读写的速度更快
(3)json可以使用JavaScript內建的方法直接进行解析,转换成JavaScript对象,非常方便
3、JSON语法规则
(1)JSON数据的书写格式是:名称/值对。
名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:比如"name":"张三"
(2)json的值可以是下面这些类型:
数字(整数或浮点数),比如123,1.23
"字符串"(在双引号中)
逻辑值(true或false)
[数组](在方括号中)
{对象}(在花括号中)
null
(3)示例:
{
"staff":[
{"name":"张三","sex":"男"}
{"name":"张三","sex":"男"}
{"name":"张三","sex":"男"}
]
}
4、json解析
(1)eval和JSON.parse
(1)JSON是存储和交换文本信息的语法,类似XML。它采用键值对的方式来组织,已与人们阅读和编写,同时也易于机器解析和生成
(2)JSON是独立于语言的,也就是说不管什么语言,都可以解析json,只需要按照json的规则来就行
2、JSON与XML比较
(1)json的长度和xml格式比起来很短小
(2)json读写的速度更快
(3)json可以使用JavaScript內建的方法直接进行解析,转换成JavaScript对象,非常方便
3、JSON语法规则
(1)JSON数据的书写格式是:名称/值对。
名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:比如"name":"张三"
(2)json的值可以是下面这些类型:
数字(整数或浮点数),比如123,1.23
"字符串"(在双引号中)
逻辑值(true或false)
[数组](在方括号中)
{对象}(在花括号中)
null
(3)示例:
{
"staff":[
{"name":"张三","sex":"男"}
{"name":"张三","sex":"男"}
{"name":"张三","sex":"男"}
]
}
4、json解析
(1)eval和JSON.parse
(2)在代码中使用eval是很危险的,特别是使用它执行第三方的JSON数据(其中可能包含恶意代码)时,尽可能使用JSON.parse()方法解析字符串本身,该方法还可以捕捉JSON中的语法错误。