JSON против 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 строку