TypeScript:
Работа с XML

Как делать:

import { parseString } from 'xml2js';

// Пример XML
const xml = `<note>
                <to>User</to>
                <from>Author</from>
                <heading>Reminder</heading>
                <body>Не забудьте о встрече!</body>
             </note>`;

// Преобразование XML в JSON
parseString(xml, (err, result) => {
    if(err) throw err;
    console.log(result);
});

// Предположим, преобразование прошло успешно, вывод может выглядеть так:
// { note:
//    { to: ['User'],
//      from: ['Author'],
//      heading: ['Reminder'],
//      body: ['Не забудьте о встрече!'] } 
}

Погружение в детали

XML, или Расширяемый Язык Разметки, существует с конца 90-х. Его самоописываемая природа и удобный для чтения формат сделали его популярным на раннем этапе для различных приложений, таких как RSS-каналы, управление конфигурациями и даже форматы офисных документов, например, Microsoft Office Open XML. Но по сравнению с JSON он многословен, и тенденция меняется. JSON получил признание для веб-базированных API благодаря своей легковесности и нативной совместимости с JavaScript.

Тем не менее, XML не умер. Он используется в крупномасштабных корпоративных системах и для стандартов документов, которые не перешли на JSON. Инструменты вроде xml2js для TypeScript или lxml в Python доказывают, что потребность в манипуляциях с XML в программировании продолжает оставаться.

TypeScript не имеет встроенной поддержки XML, как это есть для JSON. Вместо этого вы работаете с библиотеками. xml2js является одним из примеров. Она преобразует XML в JSON, делая данные более удобными для работы экспертов по JavaScript.

Смотрите также