Latest web development tutorials

XML E4X

E4X 向JavaScript 添加了對XML 的直接支持。


E4X 實例

var employees=
<employees>
<person>
<name>Tove</name>
<age>32</age>
</person>
<person>
<name>Jani</name>
<age>26</age>
</person>
</employees>;

document.write(employees.person.(name == "Tove").age);

這個實例僅適用於Firefox!

嘗試一下»



作為一個JavaScript 對象的XML

E4X 是正式的JavaScript 標準,增加了對XML 的直接支持。

使用E4X,您可以用聲明Date 或Array 對像變量的方式聲明XML 對像變量:

var x = new XML()

var y = new Date()

var z = new Array()

E4X 是一個ECMAScript(JavaScript)標準

ECMAScript 是JavaScript 的正式名稱。 ECMA-262(JavaScript 1.3)是在1999 年12 月標準化的。

E4X 是JavaScript 的擴展,增加了對XML 的直接支持。 ECMA-357(E4X)是在2004 年6 月標準化的。

ECMA 組織(成立於1961 年),是專門用於信息和通信技術(ICT)和消費電子(CE)的標準化。 ECMA 制定的標準為:

  • JavaScript
  • C# 語言
  • 國際字符集
  • 光盤
  • 磁帶
  • 數據壓縮
  • 數據通信
  • 等等...

沒有使用E4X

下面的實例是一個跨瀏覽器的實例,實例加載一個現有的XML 文檔("note.xml")到XML 解析器,並顯示消息說明:

實例

var xmlDoc;
//code for Internet Explorer
if (window.ActiveXObject)
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load("note.xml");
displaymessage();
}
// code for Mozilla, Firefox, etc.
else (document.implementation && document.implementation.createDocument)
{
xmlDoc= document.implementation.createDocument("","",null);
xmlDoc.load("note.xml");
xmlDoc.onload=displaymessage;
}

function displaymessage()
{
document.write(xmlDoc.getElementsByTagName("body")[0].firstChild.nodeValue);
}

嘗試一下»

使用E4X

下面的實例是上面的實例相同,但是使用了E4X:

var xmlDoc=new XML();
xmlDoc.load("note.xml");
document.write(xmlDoc.body);

簡單多了,是不是?


瀏覽器支持

Firefox是目前唯一對E4X的支持比較好的瀏覽器。

目前還沒有支持E4X的有Opera 、ChromeSafari

到目前為止,沒有跡象顯示在Internet Explorer中對E4X的支持。


E4X 的未來

E4X 沒有得到廣泛的支持。 也許它提供的實用功能太少,尚未被其他的解決方案涉及:

  • 對於完整的XML處理,您還需要學習XML DOMXPath
  • 對於訪問XMLHttpRequests, JSON是首選的格式。
  • 對於簡單的文檔處理, JQuery選擇更容易。