使用 JavaScript 将 XML 转成 JSON

function xmlToJson(xml) {
    // Create the return object
    var obj = {};
    if (xml.nodeType == 1) { // element
        // do attributes
        if (xml.attributes.length > 0) {
            obj["@attributes"] = {};
            for (var j = 0; j < xml.attributes.length; j++) {
                var attribute = xml.attributes.item(j);
                obj["@attributes"][attribute.nodeName] = attribute.nodeValue;
            }
        }
        obj[‘@textContent‘] = xml.textContent;

    } else if (xml.nodeType == 3) { // text
        obj = xml.nodeValue;
    }
    // do children
    if (xml.hasChildNodes()) {
        for(var i = 0; i < xml.childNodes.length; i++) {
            var item = xml.childNodes.item(i);
            var nodeName = item.nodeName;
            if (typeof(obj[nodeName]) == "undefined") {
                obj[nodeName] = xmlToJson(item);
            } else {

                if (typeof(obj[nodeName].length) == "undefined") {
                    var old = obj[nodeName];
                    obj[nodeName] = [];
                    obj[nodeName].push(old);
                }

                if(Array.isArray(obj[nodeName])){
                    obj[nodeName].push(xmlToJson(item));
                }
            }
        }
    }
    return obj;
};

var testUrl = ‘http://backmisc-beta.somaapp.com/static/team_publish/kingdom_fighter_letter/index_ar.xml‘;
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET",testUrl,false);
xmlhttp.send(null);
xmlDoc = xmlhttp.responseXML.documentElement; 

xmlToJson(xmlDoc)

  

时间: 2024-10-25 10:53:01

使用 JavaScript 将 XML 转成 JSON的相关文章

Json数据如果作为配置文件比较难读懂,XML文件作为配置文件有先天的优势,容易读懂和配置,因此不考虑效率时,在页面中宁可用XML文件作为配置文件再用JS做一次转化把XML转成JSON使用

比如如下相对比较复杂的XML <myobjects> <!--object 1--> <myobject> <id>yourID_1</id> <name>your name</name> <description> <![CDATA[Merck Biologics Pilot Plant ]]> </description> <locations> <location

C#将XML转换成JSON转换XML

原文:C#将XML转换成JSON转换XML using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml; using Newtonsoft.Json; namespace JSonConverter { class Program { static void Main(string[] args) { string xml = "<Test>

用C#将XML转换成JSON

本文旨在介绍如果通过C#将获取到的XML文档转换成对应的JSON格式字符串,然后将其输出到页面前端,以供JavaScript代码解析使用.或许你可以直接利用JavaScript代码通过Ajax的方式来读取XML,然后直接对其中的内容进行解析,这样或许更直接一些.但本文中给出的代码旨在说明如何通过原生的C#代码来完成这一转换.除此之外,你仍然可以借用一些第三方类库或者更高级一些的.NET库对象来实施转换.我们来看看这里介绍的一些较为简单的方法,但前提是你必须拥有可支持的类库和对象以备使用. 使用J

xml装成json格式

function xmlToJson(xml) { // Create the return object var obj = {}; if (xml.nodeType == 1) { // element // do attributes if (xml.attributes.length > 0) { for (var j = 0; j < xml.attributes.length; j++) { var attribute = xml.attributes.item(j); obj[a

通过JavaScript将XML转换成HTML

首先是XML文件: test.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <team> 3 <people id="1"> 4 <name>lisi</name> 5 <gender>f</gender> 6 </people> 7 <people id="2"> 8 &

xml转换成json

package it.huanyu; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.apache.log4j.Logger; import org.dom4j.*; import java.io.File; import java.io.FileInputStream; import java.nio.ByteBuffer; import java.nio.cha

python将xml转换成json数据

# -*- coding: utf-8 -*- import requests import xmltodict import json def get_response(request_url): r = requests.get(request_url) rt = r.text return rt def xmlstr2jsonstr(xmlstr): xmlparse = xmltodict.parse(xmlstr) #dumps()方法的ident=1,格式化json jsonstr

JavaScript实现XML与JSON互转代码(转载)

下面来分享一个关于JavaScript实现XML与JSON互转例子,这里面介绍了国外的三款xml转json的例子,希望这些例子能给你带来帮助. 最近在开发在线XML编辑器,打算使用JSON做为中间格式.因为JSON相对于XML,有着容易阅读.解析速度快.占用空间小等优点,更易于在WEB上传递数据.但在实际使用中还是发现了一些易于忽略的细节,对于需要严格保证XML原始结构的情况,在转换成JSON时需要一些注意. XML转换成JSON的格式大概如下: //XML形式 <article> <h

接口测试xml格式转换成json

未经允许,禁止转载!!!! 接口测试一般返回的是xml和json,现在大多数时候是返回成json的格式,但是有时候也会出现xml格式, 由于xml格式的文件阅读起来不是很容易懂,所以尽量将xml转换成json文件容易理解. 提供两个网站可以将xml转换成json : http://tool.chinaz.com/tools/json2xml.aspx http://www.bejson.com/xml2json/ 下面我们就开始讲接口测试返回的xml数据转换成json 下载一个软件,名叫Edit