一篇文章读懂XML和JSON

最后更新于:2018-03-24 13:58:38

概念

XMLJSON都可以用来从web服务器接受数据。

  • XML

XML代表可扩展标记语言,可以用来传输和储存数据,对于开发者和电脑而言,XML都是可读的。

  • JSON

JSON是JavaScript对象表示法,用于交换和储存数据,是用JavaScript对象表示法编写的文本。

  • 简单的示例
// JSON Example
{"employees":[
    { "firstName":"John", "lastName":"Doe" },
    { "firstName":"Anna", "lastName":"Smith" },
    { "firstName":"Peter", "lastName":"Jones" }
]}

// XML Example
<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>

相同和不同

XML和JSON相同点

  • XML和JSON都具有自我描述性。(self describing)
  • XML和JSON都是分层级的。
  • XML和JSON都可以被多种编程语言解析和使用。
  • XML和JSON都可以通过XMLHttpReequest对象获取。

XML和JSON的不同点

  • JSON没有结束标签。
  • JSON更短,不使用保留字,语法结构更加清晰。
  • JSON更容易读写。
  • JSON可以使用数组。
  • XML必须使用XML解析器来解析,JSON可以被标准的JavaScript函数解析。

JSON的优势

XML比JSON更难以解析,而JSON可以直接解析为一个JavaScript对象。对于Ajax应用程序而言,JSON比XML更加快捷和简单。

使用

  • XML
  1. 获取一个XML文档。
  2. 使用XML DOM来遍历文档。
  3. 提取值并储存在变量中。
  • JSON
  1. 获取JSON字符串。
  2. 使用JSON.parse()转换为JSON对象。

参考链接:w3schools=> JSON vs XML