この記事の例では、JavaScript が XML を JSON に変換する方法について説明します。皆さんの参考に共有してください。具体的な方法は以下の通りです。
1. JavaScript コードは次のとおりです:
// XML を JSON に変更します
関数 xmlToJson(xml) {
// 戻りオブジェクトを作成します
var obj = {};
If (xml.nodeType == 1) { // 要素
// 属性を実行します
If (xml.attributes.length > 0) {
obj["@attributes"] = {};
for (var j = 0; j
var 属性 = xml.attributes.item(j);
obj["@attributes"][attribute.nodeName] =attribute.nodeValue;
}
}
} else if (xml.nodeType == 3) { // text
obj = xml.nodeValue;
}
// 子を実行します
If (xml.hasChildNodes()) {
for(var i = 0; i
var item = xml.childNodes.item(i);
var ノード名 = item.nodeName;
If (typeof(obj[nodeName]) == "未定義") {
obj[nodeName] = xmlToJson(item);
} else {
If (typeof(obj[nodeName].length) == "未定義") {
var old = obj[ノード名];
obj [nodename] = [];
obj [nodename] .push(old);
}
obj[nodeName].push(xmlToJson(item));
}
}
}
obj を返します;
};
2. XML コード:
3. JSON 結果:
{
"@属性": {
補助: "=、
ホーム: 0,
URL: "davidwalsh.name/",
VER: "0.9"、
}、
SD = [
{
"@属性": {
フラグ: ""、
ホスト: "davidwalsh.name",
タイトル: A
}、
リンクシン: {
"@属性": {
番号: 1102
}
}、
速度: {
"@属性": {
PCT: 51、
本文: 1421
}
}、
タイトル: {
"@属性": {
テキスト: "David Walsh ブログ :: PHP、MySQL、CSS、JavaScript、MooTools、その他すべて",
}
}、
}、
{
人気: {
"@属性": {
テキスト: 7131、
URL: "davidwalsh.name/"
}
}、
ランク: {
"@属性": {
デルタ: "-1648"
}
}、
リーチ: {
"@属性": {
ランク = 5952
}
}
}
]
}
jsoperxml に関する興味深い友人のオンラインツール:
在線XML/JSON相互相转换ツール
在線上XML格式化/压缩ツール
ここで説明されている大家向けの JavaScript プログラムの設計が役立つことを望みます。