Javascript - jak šikovně uhandlovat XML
Dobrý den, celý den,
uff. Už jsem se něco nakódoval, tak teď dám prostor schopnějším.
Mám pseudo-XML s adresami :
<typ:id>6090</typ:id>
<typ:company>Společnost OKD</typ:company>
<typ:division>Bc. Kateřina Kalinovičová</typ:division>
<typ:city>Karlovy Vary</typ:city>
<typ:street>Újezdová</typ:street>
<typ:zip>360 01</typ:zip>
<typ:phone>766 152 101</typ:phone>
<typ:email>kalinovicova@email.cz</typ:email>
<typ:id>2626</typ:id>
<typ:company>Společnost ČKD</typ:company>
<typ:city>Karlovy Vary -Vrata</typ:city>
<typ:street>Jiřího Strnada</typ:street>
<typ:defaultShipAddress>true</typ:defaultShipAddress>
<typ:zip>360 01</typ:zip>
<typ:id>1230</typ:id>
<typ:company>Výtahy Stropnický</typ:company>
<typ:city>Karlovy Vary Vrhovice</typ:city>
<typ:street>Náměstí E. Dieslové</typ:street>
<typ:zip>360 07</typ:zip>
<typ:id>1263</typ:id>
<typ:company>Agrofert</typ:company>
<typ:city>Karlovy Vary -Olšová Vrata</typ:city>
<typ:street>Počernická 66</typ:street>
<typ:zip>360 01</typ:zip>
<typ:id>618</typ:id>
<typ:company>Fatra a.s.</typ:company>
<typ:city>Karlovy Vary - Budlínská</typ:city>
<typ:street>U Brodského 77</typ:street>
<typ:zip>360 07</typ:zip>
<typ:id>613</typ:id>
<typ:company>Benzina a.s.</typ:company>
<typ:city>Karlovy Vary U Benziny</typ:city>
<typ:street>Napadejelská 11</typ:street>
<typ:zip>360 07</typ:zip>
A potřeboval bych navést, jak elegantně vytvořit pole objektů typu Adresa v JavaScriptu:
Třeba:
adresa1 = {
id: '',
company: '',
division: '',
name: '',
city: '',
street: '',
zip: ''
}
poleAdres = new array();
poleAdres.push(adresa1);
V podstatě teď jsem narazil na část, kdy:
1)XML mám už ve stringu
2) Nemám úplně jasno v tom, jak ze stringu naplnit všechny objekty typu adresa1 a postupně jejich hodnoty (atributy)
Při čemž je potřeba brát v úvahu, co bych potřeboval zpracovat:
<typ:division> někdy je, a někdy není vůbec. Přesto pokud nebude nalezen, měl by být přítomen jako prázdný řetězec v objektu typu adresa1
Stejně tak třeba atribut <typ:phone> Nebo atribut <typ:email> Někdy jsou a někdy nejsou.
Trochu oříšek a už je večer.
Děkuji za každé řešení. 👍