文章目录
- 1. JSON 是什么?
- 2. JSON 的语法规则是怎样的?
- 3. JSON 和 XML
- 4. JSON的解析和生成(JSON 和 JS 对象互转)
- 5. JSON格式规定
- 6. 字符串转化成对象
- 7. JS对象转化为字符串
1. JSON 是什么?
- JSON,全称是 JavaScript Object Notation,即 JavaScript对象标记法。
- JSON是一种轻量级(Light-Meight)、基于文本的(Text-Based)、可读的(Human-Readable)格式。
- JSON 的名称中虽然带有JavaScript,但这是指其语法规则是参考JavaScript对象的,而不是指只能用于JavaScript 语言。
- JSON无论对于人,还是对于机器来说,都是十分便于阅读和书写的,而且相比 XML(另一种常见的数据交换格式),文件更小,因此迅速成为网络上十分流行的交换格式。
- 近年来JavaScript已经成为浏览器上事实上的标准语言,JavaScript 的风靡,与JSON 的流行也有密切的关系。
- 因为JSON本身就是参考JavaScript 对象的规则定义的,其语法与JavaScript定义对象的语法几乎完全相同。
- JSON格式的创始人声称此格式永远不升级,这就表示这种格式具有长时间的稳定性,10 年前写的文件,10年后也能用,没有任何兼容性问题。
2. JSON 的语法规则是怎样的?
JSON 的语法规则十分简单,可称得上“优雅完美”,总结起来有:
-
数组(Array)用方括号(“
[]
”)表示。 -
对象(0bject)用大括号(“
{}
”)表示。 -
名称/值对(
name/value
)组合成数组和对象。 -
名称(
name
)置于双引号中,值(value
)有字符串、数值、布尔值、null、对象和数组。 -
并列的数据之间用逗号(“
,
”)分隔{
“name”: “xdr630”,
“favorite”: “programming”
}
3. JSON 和 XML
JSON常被拿来与XML做比较,因为JSON 的诞生本来就多多少少要有取代XNL的意思。相比 XML,JSON的优势如下:
- 没有结束标签,长度更短,读写更快
- 能够直接被JavaScript解释器解析
- 可以使用数组
两者比较
-
JSON:
{
“name”:"",
“age”:22,
“fruits”:[“apple”,“pear”,“grape”]
} -
XML:
22 apple pear grape </