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# 語言
- 國際字符集
- 光盤
- 磁帶
- 數(shù)據(jù)壓縮
- 數(shù)據(jù)通信
- 等等...
沒有使用 E4X
下面的實例是一個跨瀏覽器的實例,實例加載一個現(xiàn)有的 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、Chrome 或 Safari。
到目前為止,沒有跡象顯示在 Internet Explorer 中對 E4X 的支持。
E4X 的未來
E4X 沒有得到廣泛的支持。也許它提供的實用功能太少,尚未被其他的解決方案涉及:
更多建議: