E4X インスタンス
E4XはXMLに対するスクリプトを非常に簡単にします。
E4X インスタンス
例として、注文を表すXMLドキュメントと対話します。
XMLドキュメントはこんな感じです:
<order> <date>2005-08-01</date> <customer> <firstname>John</firstname> <lastname>Johnson</lastname> </customer> <item> <name>Maxilaku</name> <qty>5</qty> <price>155.00</price> </item> </order>
もし、このXMLドキュメントをtxtという名前の文字列に保存すると、以下のJavaScript文を書くことで、それをorderという名前のXMLオブジェクトに読み込むことができます:
var order = new XML(txt)
または、直接にXMLドキュメントを使用してこのXMLオブジェクト変数に値を割り当てることができます:
var order = new XML() order=<order id="555"> <date>2005-08-01</date> <customer> <firstname>John</firstname> <lastname>Johnson</lastname> </customer> <item> <name>Maxilaku</name> <qty>5</qty> <price>155.00</price> </item> </order>
データと対話:
価格を計算:
var total=order.item.qty * order.item.price
顧客のフルネームを表示:
document.write(order.customer.lastname) document.write(",") document.write(order.customer.firstname)
新しいプロジェクトを追加:
order.item+= <item> <name>Pavlova</name> <qty>10</qty> <price>128.00</price> </item>
注文番号を表示:
document.write(order.@id)
複数の注文がある場合、合計金額を計算します:
var price=0 for each (i in order.item) { price+= i.qty*i.price }