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
  }
VUE