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 liknar XML, eftersom:

  • Både JSON och XML är “self-describing” (människovänliga)
  • Både JSON och XML är hierarkiska (värden innehåller värden)
  • Både JSON och XML kan tolkas och användas av många programmeringsspråk
  • Både JSON och XML kan läsas av XMLHttpRequest

Skillnaden mellan JSON och XML ligger i:

  • JSON använder inte taggar
  • JSON är kortare
  • JSON har snabbare läs- och skrivhastighet
  • JSON kan använda arrayer

Den största skillnaden ligger i:

XML måste användas med en XML-parser för att tolkas. Medan JSON kan tolkas med standard JavaScript-funktioner.

Varför är JSON bättre än XML?

  • XML är svårare att解析.
  • JSON parsas till JavaScript-objekt som är tillgängliga för användning.

För AJAX-applikationer är JSON snabbare och enklare att använda än XML:

Använd XML

  • Läs XML-dokument
  • Använd XML DOM för att navigera dokument
  • Extrahera värden som lagras i variabler

Använd JSON

  • Läs JSON-sträng
  • JSON.Parse JSON-sträng