Maison >interface Web >js tutoriel >Comment puis-je analyser des données XML en JavaScript sans utiliser de frameworks externes ?

Comment puis-je analyser des données XML en JavaScript sans utiliser de frameworks externes ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-29 13:27:11573parcourir

How Can I Parse XML Data in JavaScript Without Using External Frameworks?

Analyser XML à l'aide de JavaScript

À l'aide de JavaScript, vous pouvez analyser efficacement les données XML stockées dans une variable. Cet article montre comment y parvenir sans recourir à des frameworks externes comme jQuery.

Approche d'analyse DOM :

Instancier un objet DOMParser et analyser la chaîne XML. Cette méthode est prise en charge par les navigateurs modernes. Si vous rencontrez des problèmes de compatibilité, envisagez d'utiliser un ActiveXObject pour Internet Explorer.

if (window.DOMParser) {
    parser = new DOMParser();
    xmlDoc = parser.parseFromString(xmlString, "text/xml");
} else {
    xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = false;
    xmlDoc.loadXML(xmlString);
}

Accès aux valeurs des nœuds :

Une fois le XML analysé, vous pouvez identifier un nœud spécifique valeurs. Par exemple, pour récupérer le numéro de la maison :

xmlDoc.getElementsByTagName("streetNumber")[0].childNodes[0].nodeValue;

De même, vous pouvez obtenir d'autres valeurs, telles que le nom de la rue, le code postal, etc.

Gestion des espaces de noms :

Si votre XML contient des préfixes d'espace de noms, ils doivent être exclus lors de la demande de l'élément sans préfixe. Par exemple :

// Assuming a namespace prefix of 'sn' for streetNumber
xmlDoc.getElementsByTagName("streetNumber")[0].childNodes[0].nodeValue;

Conclusion :

L'analyse XML en JavaScript à l'aide de DOM est un processus simple. En tirant parti de l'objet DOMParser et en accédant à des valeurs de nœud spécifiques, vous pouvez extraire efficacement des données de votre XML.

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