Maison >interface Web >js tutoriel >Comment puis-je analyser des documents XML à l'aide de l'API DOM de JavaScript ?

Comment puis-je analyser des documents XML à l'aide de l'API DOM de JavaScript ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-05 03:11:111048parcourir

How Can I Parse XML Documents Using JavaScript's DOM API?

Analyser XML à l'aide de JavaScript

L'analyse de documents XML en JavaScript est une exigence courante pour le développement Web. Ceci peut être facilement réalisé à l'aide de l'API JavaScript native DOM (Document Object Model).

L'API DOM

L'API DOM fournit une représentation hiérarchique d'un document XML, permettant aux développeurs d'accéder et de manipuler les nœuds XML et leurs attributs. Pour analyser un document XML à l'aide de l'API DOM, suivez ces étapes :

  1. Créez un objet DOMParser : cet objet est utilisé pour analyser des chaînes XML dans une structure DOM.
  2. Analyser la chaîne XML : Appelez la méthode parseFromString de l'objet DOMParser pour analysez la chaîne XML et créez un document DOM.
  3. Accès aux nœuds XML : utilisez des méthodes telles que getElementsByTagName et getElementsByTagNameNS pour accéder aux nœuds XML souhaités en fonction de leurs noms de balises et espaces de noms (si applicable).

Exemple

Considérez la chaîne XML suivante :

<address>
  <street>Roble Ave</street>
  <streetNumber>649</streetNumber>
  <postalcode>94025</postalcode>
</address>

Pour analyser cette chaîne XML et accéder au nom de la rue , numéro de rue et code postal, utilisez le JavaScript suivant code :

const txt = `<xml string here>`;

if (window.DOMParser) {
  const parser = new DOMParser();
  const xmlDoc = parser.parseFromString(txt, "text/xml");
  console.log(xmlDoc.getElementsByTagName("street")[0].childNodes[0].nodeValue); // Logs "Roble Ave"
  console.log(xmlDoc.getElementsByTagName("streetNumber")[0].childNodes[0].nodeValue); // Logs "649"
  console.log(xmlDoc.getElementsByTagName("postalcode")[0].childNodes[0].nodeValue); // Logs "94025"
} else {
  // Code for older browsers using ActiveXObject
}

Remarque :

  • Préfixes d'espace de noms : Si le document XML contient des préfixes d'espace de noms, veillez à spécifier le espace de noms lors de l'accès aux nœuds XML à l'aide de getElementsByTagNameNS.
  • Prise en charge des navigateurs : L'API DOM est prise en charge par tous les principaux navigateurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn