javascript で配列に処理しようとしている大きな xml ドキュメントがあります。
<DR> <C> <SWDGDRC> <CID>0</CID> <V>06/01/2012 00:00:00</V> </SWDGDRC> <SWDGDRC> <CID>1</CID> <V>1131</V> </SWDGDRC> <SWDGDRC> <CID>2</CID> <V>28800</V> </SWDGDRC> </C> <rowid>0</rowid> </DR> <DR> <C> <SWDGDRC> <CID>0</CID> <V>06/02/2012 00:00:00</V> </SWDGDRC> <SWDGDRC> <CID>1</CID> <V /> </SWDGDRC> <SWDGDRC> <CID>2</CID> <V /> </SWDGDRC> </C> <rowid>1000</rowid>
これは複数の DR (データ行) で構成され、各 DR には複数の C (列) と行 ID があります。このすべてのデータを連想配列にループしようとしています:
for(var i=0; i < DR.length; i++) { // loop DR
for(var j=0; j < DR[i].getElementsByTagName('C').length; j++) { // loop C
for(var k=0; k < DR[i].getElementsByTagName('C')[j].getElementsByTagName('SWDGDRC').length; k++) { //loop SWDGDRC
columnData[i] = {
"rowid": DR[i].getElementsByTagName('rowid')[0].textContent,
"column": {
columnID: DR[i].getElementsByTagName('C')[j].getElementsByTagName('SWDGDRC')[k].getElementsByTagName('CID')[0].textContent,
value:DR[i].getElementsByTagName('C')[j].getElementsByTagName('SWDGDRC')[k].getElementsByTagName('V')[0].textContent
}
};
}
}
}
問題は、すべての C (列) データをループする「列」キーに新しい配列を作成して、次のようなものを使用してこのデータにアクセスできるようにすることです: columnData[0]['column'][0]['列ID']