JSON vs XML
JSON 和 XML 均可用于从 web 服务器接收数据。
下面的 JSON 和 XML 实例都定义了雇员对象,包含了由 3 个雇员构成的数组:
JSON 实例
- {"employees":[
- { "firstName":"Bill", "lastName":"Gates" },
- { "firstName":"Steve", "lastName":"Jobs" },
- { "firstName":"Elon", "lastName":"Musk" }
- ]}
XML 实例
- <employees>
- <employee>
- <firstName>Bill</firstName>
- <lastName>Gates</lastName>
- </employee>
- <employee>
- <firstName>Steve</firstName>
- <lastName>Jobs</lastName>
- </employee>
- <employee>
- <firstName>Elon</firstName>
- <lastName>Musk</lastName>
- </employee>
- </employees>
JSON 类似 XML,因为:
- JSON 和 XML 都是“自描述的”(人类可读的)
- JSON 和 XML 都是分级的(值中有值)
- JSON 和 XML 都能被大量编程语言解析和使用
- JSON 和 XML 都能被 XMLHttpRequest 读取
JSON 与 XML 的差异在于:
- JSON 不使用标签
- JSON 更短
- JSON 的读写速度更快
- JSON 可使用数组
最大的不同在于:
XML 必须使用 XML 解析器进行解析。而 JSON 可通过标准的 JavaScript 函数进行解析。
为什么 JSON 比 XML 更好?
- XML 比 JSON 更难解析。
- JSON 被解析为可供使用的 JavaScript 对象。
对于 AJAX 应用程序,JSON 比 XML 更快更易用:
使用 XML
- 读取 XML 文档
- 使用 XML DOM 遍历文档
- 提取变量中存储的值
使用 JSON
- 读取 JSON 字符串
- JSON.Parse JSON 字符串