E4X

王朝百科·作者佚名  2010-02-18  
宽屏版  字体:   |    |    |  超大  

E4XE4X(ECMAScript for XML)是一种在ECMAScript(见ECMA-262,包括ActionScript、JavaScript等语言实现)标准的基础上加入的动态XML支持的程序语言扩展。

E4X的目的是作为DOM接口之外的另一个选择。它可以使程序员在ECMAScript脚本中通过更简洁的语法来访问XML文档。同时,它也为实现脚本中XML可视化提供了一种新方法。在E4X发布以前,用户常常在对象级上访问XML。E4X改变了这一状况。它把XML当作一种简单类型来使用(相当于一个字符型,整型或者布尔型)。通过 E4X,您可以像声明 Date 或 Math 对象那样声明 XML 对象:

var x = new XML();

var y = new Date();

var z = new Array();

通过这样的方式,不仅加快了访问速度,并且XML的表示更加直观,更容易为开发者所接受。

E4X被欧洲计算机制造商协会(ECMA)标准化为ECMA-357标准。其第一版于2004年6月发布,次年12月发布第二版。

E4X 实现E4X在(至少部分地)SpiderMonkey(Gecko的JavaScript引擎)和Rhino中实现。MozillaFirefox是基于Gecko引擎的,所以它可以用E4X运行脚本。该规范相当新,只有1.5版本及以上支持。 Macromedia的ActionScript3脚本语言完整地支持E4X,ActionScript3在2005年末已可用。

注意∶为了正确地在Firefox 1.5中运行E4X,你必须在脚本的HTML标签中将类型(type)值後面加入“; e4x=1”字符串(如:<script type="text/javascript; e4x=1">)。

E4X 实例如类似下文的XML文档:

<note>

<date>2008-08-08</date>

<to>George</to>

<from>John</from>

<heading>Reminder</heading>

<body>Don't forget the meeting this weekend!</body>

</note>

假如我们把这个 XML 文档存储在一个名为 note 的字符串中,那么通过编写如下的 JavaScript 语句,我们就可以把它载入一个名为 x 的 XML 对象变量中:

var x = new XML(note);

或者我们可以直接使用 XML 文本为该 XML 对象变量赋值:

var x = new XML()

x=

<note>

<date>2008-08-08</date>

<to>George</to>

<from>John</from>

<heading>Reminder</heading>

<body>Don't forget the meeting this weekend!</body>

</note>

由于可以把 XML 文档作为 XML 对象进行声明,解析和操作 XML 文档是非常简单的。

按照上面的那个例子,编写一条 JavaScript 语句:

document.write(x.from);

将输出:

John

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有