E4X教程[5] - 全局 XML 对象

简介: 全局 XML 对象 E4X-capable JavaScript 引擎在全局对象上放了一个新的属性。XML 对象有许多属性允许你定制解析和序列化 E4X。XML 元素从他们创建开始就记住 XML 对象的设置。 扩展 XML.prototype XML.prototype 和 XMLList.prototype(XMLList.prototype 实际上就是 XML.prototype)不

全局 XML 对象

E4X-capable JavaScript 引擎在全局对象上放了一个新的属性。XML 对象有许多属性允许你定制解析和序列化 E4X。XML 元素从他们创建开始就记住 XML 对象的设置。

扩展 XML.prototype

XML.prototype 和 XMLList.prototype(XMLList.prototype 实际上就是 XML.prototype)不能像其他构造器(例如 Object)一样扩展。你只能在 XML.prototype 里定义方法,而不能定义字段。要向 XML.prototype 添加一个方法,则要定义 XML.prototype.function::methodName 或 XML.prototype.funciton::[methodNameString]。下例定义 fooCount() 方法,返回 XML 中 <foo> 元素的个数:

XML.prototype.function::fooCount = function fooCount() { return this..foo.length(); }; <foobar><foo/><foo/><foo/></foobar>.fooCount() // returns 3

ignoreComments

默认为 true。该属性告诉 E4X 在序列化和筛选时忽略注释节点。即当 ignoreComments 为 ture 时 .comments() 返回空。观察如下例子:

var element = <foo> <!-- my comment --> <bar/> </foo>; element.comments().length(); // returns 0 element.toXMLString(); // returns <foo><bar/></foo> XML.ignoreComments = false; element = <foo> <!-- my comment --> <bar/> </foo>; element.comments().length(); // returns 1 element.toXMLString(); // returns <foo><!-- my comment --><bar/></foo>

ignoreProcessingInstructions

默认为 ture。该属性告诉 E4X 在序列化和筛选时忽略 XML 中的处理指令。例如:

var element = <foo> <?process x="true"?> <bar/> <?process x="false"?> </foo>; element.toXMLString(); // returns <foo><bar/></foo> XML.ignoreProcessingInstructions = false; var element = <foo> <?process x="true"?> <bar/> <?process x="false"?> </foo>; element.toXMLString(); // returns <foo><?process x="true"?><bar/><?process x="false"?></foo>

ignoreWhitespace

默认为 true。忽略节点之间以及节点文本头尾两端的空白,而其他的则被解析为文本节点或作为文本节点的一部分。

prettyPrinting

默认是 true。为 true 时,toXMLString() 序列化 E4X 对象时会包含换行和缩进。

prettyIndent

默认值是 2。代表 XML 树每层缩进的空格数。如果 prettyPrinting 是 false 则忽略。


为方便其他朋友提问和指正,转载是请保持文章完整性,并以超链接形式注明原始作者“redraiment ”和主站点 地址,谢谢。

联系方式

我的邮箱,欢迎来信(redraiment@gmail.com
我的CSDN博客(梦婷轩 ):http://blog.csdn.net/redraiment
我的百度空间(梦婷轩 ):http://hi.baidu.com/redraiment

目录
相关文章
|
5天前
|
XML JavaScript API
Ruby 教程 之 Ruby XML, XSLT 和 XPath 教程 3
Ruby XML, XSLT 和 XPath 教程
35 1
|
5天前
|
XML JavaScript API
Ruby 教程 之 Ruby XML, XSLT 和 XPath 教程 2
Ruby XML, XSLT 和 XPath 教程
28 0
|
5天前
|
存储 Java 测试技术
JAVA-MAVEN初学者教程(配置、pom.xml、依赖管理等)
JAVA-MAVEN初学者教程(配置、pom.xml、依赖管理等)
325 0
|
5天前
|
XML Java 数据库连接
MyBatis--映射关系一对一和MyBatis--映射关系多对一 -都有基于xml和注解的教程
MyBatis--映射关系一对一和MyBatis--映射关系多对一 -都有基于xml和注解的教程
91 0
|
5天前
|
XML 数据格式
com.sun.istack.SAXException2: 在对象图中检测到循环。这将产生无限深的 XML
com.sun.istack.SAXException2: 在对象图中检测到循环。这将产生无限深的 XML
11 0
|
5天前
|
XML 数据格式 Ruby
Ruby 教程 之 Ruby XML, XSLT 和 XPath 教程 5
Ruby XML, XSLT 和 XPath 教程
94 0
|
5天前
|
XML 数据格式 Ruby
Ruby 教程 之 Ruby XML, XSLT 和 XPath 教程 4
Ruby XML, XSLT 和 XPath 教程
113 1
|
5天前
|
XML JavaScript Java
Spring5源码(16)-Spring将Xml文件解析为Document对象
Spring5源码(16)-Spring将Xml文件解析为Document对象
40 0
|
5天前
|
SQL Java 关系型数据库
Hibernate - 对象关系映射文件(*.hbm.xml)详解
Hibernate - 对象关系映射文件(*.hbm.xml)详解
122 1
|
10月前
|
XML Java 关系型数据库
【MyBatis】better-mybatis-generator 插件快速生成dao、pojo、xml教程
【MyBatis】better-mybatis-generator 插件快速生成dao、pojo、xml教程
154 0