On this page

JSON vs XML

JSON 和 XML 都可用于从 Web 服务器接收数据。


以下 JSON 和 XML 示例都定义了一个员工对象,其中包含 3 个员工的数组:

JSON 示例

{"employees":[
  { "firstName":"John", "lastName":"Doe" },
  { "firstName":"Anna", "lastName":"Smith" },
  { "firstName":"Peter", "lastName":"Jones" }
]}

XML 示例

<employees>
  <employee>
    <firstName>John</firstName> <lastName>Doe</lastName>
  </employee>
  <employee>
    <firstName>Anna</firstName> <lastName>Smith</lastName>
  </employee>
  <employee>
    <firstName>Peter</firstName> <lastName>Jones</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.解析JSON字符串