FLEX程序设计--XML类
使用 toXMLString()
方法可返回 XML 对象的字符串表示形式,不管该 XML 对象具有简单内容还是复杂内容。
属性 | 定义方 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。
|
Object | ||
ignoreComments : Boolean
[] 确定当 XML 对象分析源 XML 数据时,是否忽略 XML 注释。
|
XML | ||
ignoreProcessingInstructions : Boolean
[] 确定当 XML 对象分析源 XML 数据时,是否忽略 XML 处理指令。
|
XML | ||
ignoreWhitespace : Boolean
[] 确定分析期间是否忽略文本节点开头和末尾处的空白字符。
|
XML | ||
prettyIndent : int
[] 确定当 XML.prettyPrinting 属性设置为 true 时,toString() 和 toXMLString() 方法所应用的缩进量。
|
XML | ||
prettyPrinting : Boolean
[] 确定 toString() 和 toXMLString() 方法是否对某些标签之间的空白字符进行规格化。
|
XML | ||
prototype : Object
[] 对类或函数对象的原型对象的引用。
|
Object |
方法 | 定义方 | ||
---|---|---|---|
创建一个新的 XML 对象。
|
XML | ||
可将命名空间添加到该 XML 对象所在范围的命名空间集中。
|
XML | ||
将给定子项追加到该 XML 对象属性的末尾。
|
XML | ||
返回其名称与 attributeName 参数相符的属性的 XML 值。
|
XML | ||
返回给定 XML 对象的属性值列表。
|
XML | ||
列出 XML 对象的子项。
|
XML | ||
确定该 XML 对象在其父项上下文中从 0 开始编制索引的位置。
|
XML | ||
按 XML 对象的显示顺序列出其子项。
|
XML | ||
列出包含 XML 注释的 XML 对象的属性。
|
XML | ||
对比该 XML 对象与给定 value 参数。
|
XML | ||
返回给定 XML 对象的副本。
|
XML | ||
[] 返回一个下列属性设置为默认值的对象:ignoreComments、ignoreProcessingInstructions、ignoreWhitespace、prettyIndent 和 prettyPrinting。
|
XML | ||
返回包含给定 name 参数的 XML 对象的所有后代(子级、孙级、曾孙级等)。
|
XML | ||
列出某 XML 对象的元素。
|
XML | ||
检查该 XML 对象是否包含复杂内容。
|
XML | ||
检查该对象是否具有 p 参数所指定的属性。
|
XML | ||
检查该 XML 对象是否包含简单内容。
|
XML | ||
根据该 XML 对象的父项列出其命名空间。
|
XML | ||
在该 XML 对象的 child1 参数后插入给定的 child2 参数并返回生成的对象。
|
XML | ||
在该 XML 对象的 child1 参数前插入给定的 child2 参数并返回生成的对象。
|
XML | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。
|
Object | ||
对于 XML 对象,该方法始终返回整数 1。
|
XML | ||
提供该 XML 对象限定名称的本地名称部分。
|
XML | ||
提供该 XML 对象的限定名称。
|
XML | ||
如果没有提供参数,则提供与该 XML 对象的限定名关联的命名空间。
|
XML | ||
在该 XML 对象的父项中列出与其关联的命名空间声明。
|
XML | ||
指定节点的类型:文本、注释、处理指令、属性或元素。
|
XML | ||
对于该 XML 对象以及所有子级 XML 对象,合并相邻文本节点并删除空文本节点。
|
XML | ||
返回 XML 对象的父项。
|
XML | ||
将提供的 child 对象的副本插入 XML 元素中,并放在该元素的任何现有 XML 属性前面。
|
XML | ||
如果提供了 name 参数,则列出 XML 对象中包含带有该 name 的处理指令的所有子项。
|
XML | ||
检查属性 p 所在的属性集是否可在应用于 XMLList 对象的 for..in 语句中遍历。
|
XML | ||
删除该对象及其所有子级的给定命名空间。
|
XML | ||
用给定的 value 参数替换 propertyName 参数所指定的属性。
|
XML | ||
用 value 参数中提供的指定 XML 属性集替换该 XML 对象的子属性。
|
XML | ||
将该 XML 对象的本地名称更改为给定的 name 参数。
|
XML | ||
将该 XML 对象的名称设置为给定限定名称或属性名。
|
XML | ||
设置与该 XML 对象关联的命名空间。
|
XML | ||
设置循环操作动态属性的可用性。
|
Object | ||
[] 设置下列 XML 属性的值:ignoreComments、ignoreProcessingInstructions、ignoreWhitespace、prettyIndent 和 prettyPrinting。
|
XML | ||
[] 检索下列属性:ignoreComments、ignoreProcessingInstructions、ignoreWhitespace、prettyIndent 和 prettyPrinting。
|
XML | ||
返回 XML 对象用来表示 XML 文本节点的所有 XML 属性的 XMLList 对象。
|
XML | ||
返回 XML 对象的字符串表示形式。
|
XML | ||
返回 XML 对象的字符串表示形式。
|
XML | ||
返回该 XML 对象。
|
XML |
ignoreComments | 属性 |
ignoreComments:Boolean
[]
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
确定当 XML 对象分析源 XML 数据时,是否忽略 XML 注释。默认情况下,将忽略注释 (true
)。若要包括 XML 注释,请将此属性设置为 false
。ignoreComments
属性仅在 XML 分析过程中使用,而不能在调用任何方法(例如,myXMLObject.child(*).toXMLString()
)时使用。如果源 XML 包含注释节点,可在 XML 分析过程中保留或丢弃这些节点。
实现
public static function get ignoreComments():Boolean
public function set ignoreComments(value:Boolean):void
另请参见
示例
XML.ignoreComments
设置为 false
以及设置为 true
的效果:
XML.ignoreComments = false; var xml1:XML = <foo> <!-- comment --> </foo>; trace(xml1.toXMLString()); // <foo><!-- comment --></foo> XML.ignoreComments = true; var xml2:XML = <foo> <!-- example --> </foo>; trace(xml2.toXMLString()); // <foo/>
ignoreProcessingInstructions | 属性 |
ignoreProcessingInstructions:Boolean
[]
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
确定当 XML 对象分析源 XML 数据时,是否忽略 XML 处理指令。默认情况下,将忽略处理指令 (true
)。若要包括 XML 处理指令,请将此属性设置为 false
。ignoreProcessingInstructions
属性仅在 XML 分析过程中使用,而不能在调用任何方法(例如,myXMLObject.child(*).toXMLString()
)时使用。如果源 XML 包含处理指令节点,可在 XML 分析过程中保留或丢弃这些节点。
实现
public static function get ignoreProcessingInstructions():Boolean
public function set ignoreProcessingInstructions(value:Boolean):void
另请参见
示例
XML.ignoreProcessingInstructions
设置为 false
以及设置为 true
的效果:
XML.ignoreProcessingInstructions = false; var xml1:XML = <foo> <?exampleInstruction ?> </foo>; trace(xml1.toXMLString()); // <foo><?exampleInstruction ?></foo> XML.ignoreProcessingInstructions = true; var xml2:XML = <foo> <?exampleInstruction ?> </foo>; trace(xml2.toXMLString()); // <foo/>
ignoreWhitespace | 属性 |
ignoreWhitespace:Boolean
[]
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
确定分析期间是否忽略文本节点开头和末尾处的空白字符。默认情况下,将忽略空白 (true
)。如果文本节点 100% 是空白,且 ignoreWhitespace
属性设置为 true
,则不会创建该节点。若要显示文本节点中的空白,请将 ignoreWhitespace
属性设置为 false
。
实现
public static function get ignoreWhitespace():Boolean
public function set ignoreWhitespace(value:Boolean):void
示例
XML.ignoreWhitespace
设置为 false
以及设置为 true
的效果:
XML.ignoreWhitespace = false; var xml1:XML = <foo> </foo>; trace(xml1.children().length()); // 1 XML.ignoreWhitespace = true; var xml2:XML = <foo> </foo>; trace(xml2.children().length()); // 0
prettyIndent | 属性 |
prettyIndent:int
[]
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
确定当 XML.prettyPrinting
属性设置为 true
时,toString()
和 toXMLString()
方法所应用的缩进量。应用缩进时使用空格字符,而不是制表符。默认值为 2
。
实现
public static function get prettyIndent():int
public function set prettyIndent(value:int):void
另请参见
示例
XML.prettyIndent
静态属性的效果:
var xml:XML = <foo><bar/></foo>; XML.prettyIndent = 0; trace(xml.toXMLString()); XML.prettyIndent = 1; trace(xml.toXMLString()); XML.prettyIndent = 2; trace(xml.toXMLString());
prettyPrinting | 属性 |
prettyPrinting:Boolean
[]
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
确定 toString()
和 toXMLString()
方法是否对某些标签之间的空白字符进行规格化。默认值为 true
。
实现
public static function get prettyPrinting():Boolean
public function set prettyPrinting(value:Boolean):void
另请参见
示例
XML.prettyPrinting
静态属性的效果:
var xml:XML = <foo><bar/></foo>; XML.prettyPrinting = false; trace(xml.toXMLString()); XML.prettyPrinting = true; trace(xml.toXMLString());
XML | () | 构造函数 |
public function XML(value:Object)
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
创建一个新的 XML 对象。调用 XML 类的方法之前,必须使用该构造函数创建一个 XML 对象。
使用 toXMLString()
方法可返回 XML 对象的字符串表示形式,不管该 XML 对象具有简单内容还是复杂内容。
参数
value:Object — 可通过顶级 XML() 函数转换为 XML 的任意对象。 |
另请参见
addNamespace | () | 方法 |
AS3 function addNamespace(ns:Object):XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
可将命名空间添加到该 XML 对象所在范围的命名空间集中。如果 XML 对象(其前缀与给定参数的前缀匹配)所在范围的命名空间中已存在该命名空间,则现有命名空间的前缀将设置为 undefined
。如果输入参数是一个 Namespace 对象,则直接使用该参数。如果它是一个 QName 对象,则使用输入参数的 URI 创建新的命名空间;否则,会将它转换为一个 String 值并根据该 String 值创建命名空间。
参数
ns:Object — 要添加到 XML 对象中的命名空间。 |
返回
XML — 添加了命名空间的新 XML 对象。 |
另请参见
示例
var xml1:XML = <ns:foo xmlns:ns="www.example.com/ns" />; var nsNamespace:Namespace = xml1.namespace(); var xml2:XML = <bar />; xml2.addNamespace(nsNamespace); trace(xml2.toXMLString()); // <bar xmlns:ns="www.example.com/ns"/>
appendChild | () | 方法 |
AS3 function appendChild(child:Object):XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
将给定子项追加到该 XML 对象属性的末尾。appendChild()
方法可采用 XML 对象、XMLList 对象或随后转换为 String 的任何其它数据类型。
使用 delete
(XML) 运算符删除 XML 节点。
参数
child:Object — 要追加的 XML 对象。 |
返回
XML — 生成的 XML 对象。 |
另请参见
The E4X approach to XML processing
XML objects
Assembling and transforming XML objects
示例
var xml:XML = <body> <p>hello</p> </body>; xml.appendChild(<p>world</p>); trace(xml.p[0].toXMLString()); // <p>hello</p> trace(xml.p[1].toXMLString()); // <p>world</p>
attribute | () | 方法 |
AS3 function attribute(attributeName:*):XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回其名称与 attributeName
参数相符的属性的 XML 值。可在 XML 元素内找到属性。在以下示例中,元素具有名为“gender
”的属性,其值为“boy
”:<first gender="boy">John</first>
。
attributeName
参数可以是任何数据类型;但 String 是最常用的数据类型。在传递 QName 对象之外的任何对象时,attributeName
参数会使用 toString()
方法将参数转换为字符串。
如果需要一个限定名称引用,可以传入 QName 对象。QName 对象可定义命名空间和本地名称,还可定义属性的限定名称。因此,调用 attribute(qname)
不同于调用 attribute(qname.toString())
。
参数
attributeName:* — 属性的名称。 |
返回
XMLList — 一个 XMLList 对象或空的 XMLList 对象。在未定义属性值时返回一个空的 XMLList 对象。 |
另请参见
QName
Namespace
XML.elements()
http://www.cnblogs.com/wenjl520/admin/mk:@MSITStore:E:\DesktopFile\知识库\Flex\Flex.3API文档.chm::/operators.html#attribute_identifier
XML objects
Traversing XML structures
示例
attribute()
方法。localName
属性为 attr
,namespace
属性为 ns
。
var xml:XML = <ns:node xmlns:ns = "http://uri" ns:attr = '7' /> var qn:QName = new QName("http://uri", "attr"); trace(xml.attribute(qn)); // 7
attribute()
方法替代属性标识符 (@) 运算符,如下面的示例所示:
var xml:XML = <example class="first" /> trace(xml.attribute("class"));
attributes | () | 方法 |
AS3 function attributes():XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回给定 XML 对象的属性值列表。结合使用 name()
方法和 attributes()
方法可返回属性的名称。使用 @*
可返回所有属性的名称。
返回
XMLList — 属性值的列表。 |
另请参见
示例
var xml:XML=<example id='123' color='blue'/> trace(xml.attributes()[1].name()); //color
var xml:XML = <example id='123' color='blue'/> var attNamesList:XMLList = xml.@*; trace(attNamesList is XMLList); // true trace(attNamesList.length()); // 2 for (var i:int = 0; i < attNamesList.length(); i++) { trace(typeof (attNamesList[i])); // xml trace(attNamesList[i].nodeKind()); // attribute trace(attNamesList[i].name()); // id and color }
child | () | 方法 |
AS3 function child(propertyName:Object):XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
列出 XML 对象的子项。一个 XML 子项就是一个 XML 元素、文本节点、注释或处理指令。
使用 propertyName
参数可列出特定 XML 子项的内容。例如,若要返回名为 <first>
的子项的内容,可使用 child.name("first")
。使用子项的索引编号,可以生成相同的结果。索引编号标识该子项在其它 XML 子项列表中的位置。例如,name.child(0)
将返回列表中的第一个子项。
使用星号 (*) 可输出 XML 文档中的所有子项。例如,doc.child("*")
。
结合使用 length()
方法与 child()
方法的星号 (*) 参数可输出子项的总数。例如,numChildren = doc.child("*").length()
。
参数
propertyName:Object — XML 子对象的元素名称或整数。 |
返回
XMLList — 与输入参数匹配的子节点的 XMLList 对象。 |
另请参见
示例
child()
方法识别具有指定名称的子元素:
var xml:XML = <foo> <bar>text1</bar> <bar>text2</bar> </foo>; trace(xml.child("bar").length()); // 2 trace(xml.child("bar")[0].toXMLString()); // <bar>text1</bar> trace(xml.child("bar")[1].toXMLString()); // <bar>text2</bar>
childIndex | () | 方法 |
AS3 function childIndex():int
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
确定该 XML 对象在其父项上下文中从 0 开始编制索引的位置。
返回
int — 对象的位置。返回 -1 以及正整数。 |
另请参见
示例
childIndex()
方法:
var xml:XML = <foo> <bar /> text <bob /> </foo>; trace(xml.bar.childIndex()); // 0 trace(xml.bob.childIndex()); // 2
children | () | 方法 |
AS3 function children():XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
按 XML 对象的显示顺序列出其子项。一个 XML 子项就是一个 XML 元素、文本节点、注释或处理指令。
返回
XMLList — XML 对象子项的 XMLList 对象。 |
另请参见
示例
children()
方法:
XML.ignoreComments = false; XML.ignoreProcessingInstructions = false; var xml:XML = <foo id="22"> <bar>44</bar> text <!-- comment --> <?instruction ?> </foo>; trace(xml.children().length()); // 4 trace(xml.children()[0].toXMLString()); // <bar>44</bar> trace(xml.children()[1].toXMLString()); // text trace(xml.children()[2].toXMLString()); // <!-- comment --> trace(xml.children()[3].toXMLString()); // <?instruction ?>
comments | () | 方法 |
AS3 function comments():XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
列出包含 XML 注释的 XML 对象的属性。
返回
XMLList — 包含注释的属性的 XMLList 对象。 |
另请参见
示例
comments()
方法:
XML.ignoreComments = false; var xml:XML = <foo> <!-- example --> <!-- example2 --> </foo>; trace(xml.comments().length()); // 2 trace(xml.comments()[1].toXMLString()); // <!-- example2 -->
contains | () | 方法 |
AS3 function contains(value:XML):Boolean
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
对比该 XML 对象与给定 value
参数。
参数
value:XML — 要与当前 XML 对象进行对比的值。 |
返回
Boolean — 如果 XML 对象与 value 参数匹配,则为 true ;否则为 false 。 |
另请参见
示例
contains()
方法:
var xml:XML = <order> <item>Rice</item> <item>Kung Pao Shrimp</item> </order>; trace(xml.item[0].contains(<item>Rice</item>)); // true trace(xml.item[1].contains(<item>Kung Pao Shrimp</item>)); // true trace(xml.item[1].contains(<item>MSG</item>)); // false
copy | () | 方法 |
AS3 function copy():XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回给定 XML 对象的副本。该副本为整个节点树的副本。复制的 XML 对象没有父级,如果尝试调用 parent()
方法,将返回 null
。
返回
XML — 对象的副本。 |
另请参见
示例
copy()
方法如何创建 XML 对象的新实例。修改副本时,原始对象保持不变:
var xml1:XML = <foo />; var xml2:XML = xml1.copy(); xml2.appendChild(<bar />); trace(xml1.bar.length()); // 0 trace(xml2.bar.length()); // 1
defaultSettings | () | 方法 |
AS3 static function defaultSettings():Object
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回一个下列属性设置为默认值的对象:ignoreComments
、ignoreProcessingInstructions
、ignoreWhitespace
、prettyIndent
和 prettyPrinting
。其默认值如下:
ignoreComments = true
ignoreProcessingInstructions = true
ignoreWhitespace = true
prettyIndent = 2
prettyPrinting = true
注意:不要将此方法应用于 XML 类的实例;应将其应用于 XML
,如以下代码所示:var df:Object = XML.defaultSettings()
。
返回
Object — 属性设置为默认设置的对象。 |
另请参见
XML.ignoreProcessingInstructions
XML.ignoreWhitespace
XML.prettyIndent
XML.prettyPrinting
XML.setSettings()
XML.settings()
XML objects
示例
XML.ignoreComments = false; XML.ignoreProcessingInstructions = false; var customSettings:Object = XML.settings(); var xml1:XML = <foo> <!-- comment --> <?instruction ?> </foo>; trace(xml1.toXMLString()); // <foo> // <!-- comment --> // <?instruction ?> // </foo> XML.setSettings(XML.defaultSettings()); var xml2:XML = <foo> <!-- comment --> <?instruction ?> </foo>; trace(xml2.toXMLString());
descendants | () | 方法 |
AS3 function descendants(name:Object = *):XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回包含给定 name
参数的 XML 对象的所有后代(子级、孙级、曾孙级等)。name
参数是可选项。name
参数可以为 QName 对象、String 数据类型或随后转换为 String 数据类型的任何其它数据类型。
若要返回所有后代,请使用“*”参数。如果未传递任何参数,则传递字符串“*”,并返回此 XML 对象的所有后代。
参数
name:Object (default = * ) — 要匹配的元素的名称。 |
返回
XMLList — 匹配后代的 XMLList 对象。如果没有后代,则返回空的 XMLList 对象。 |
另请参见
示例
descendants()
方法,而不要使用后代运算符 (..), 运算符,如下面的示例所示:
var xml:XML = <enrollees> <student id="239"> <class name="Algebra" /> <class name="Spanish 2"/> </student> <student id="206"> <class name="Trigonometry" /> <class name="Spanish 2" /> </student> </enrollees> trace(xml.descendants("class"));
descendants()
方法如何返回包含所有后代对象(包括子级、孙级等)的 XMLList 对象:
XML.ignoreComments = false; var xml:XML = <body> <!-- comment --> text1 <a> <b>text2</b> </a> </body>; trace(xml.descendants("*").length()); // 5 trace(xml.descendants("*")[0]); // // <!-- comment --> trace(xml.descendants("*")[1].toXMLString()); // text1 trace(xml.descendants("a").toXMLString()); // <a><b>text2</b></a> trace(xml.descendants("b").toXMLString()); // <b>text2</b>
elements | () | 方法 |
AS3 function elements(name:Object = *):XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
列出某 XML 对象的元素。一个由开始和结束标签组成的元素;例如 <first></first>
。name
参数是可选项。name
参数可以为 QName 对象、String 数据类型或随后转换为 String 数据类型的任何其它数据类型。使用 name
参数可列出特定元素。例如,以下示例中的元素“first
”返回“John
”:<first>John</first>
。
若要列出所有元素,请使用星号 (*) 作为参数。该星号也是默认参数。
使用带星号参数的 length()
方法可输出元素的总数。例如,numElement = addressbook.elements("*").length()
。
参数
name:Object (default = * ) — 元素的名称。元素的名称由尖括号括起。例如,以下示例中的“first ”为 name :<first></first> 。 |
返回
XMLList — 元素内容的 XMLList 对象。元素内容位于起始和结束标签之间。如果使用星号 (*) 调用所有元素,将返回元素的标签和内容。 |
另请参见
示例
elements()
方法只返回元素列表,而不返回注释、文本属性或处理指令:
var xml:XML = <foo> <!-- comment --> <?instruction ?> text <a>1</a> <b>2</b> </foo>; trace(xml.elements("*").length()); // 2 trace(xml.elements("*")[0].toXMLString()); // <a>1</a> trace(xml.elements("b").length()); // 1 trace(xml.elements("b")[0].toXMLString()); // <b>2</b>
elements()
方法替代 XML 点 (.) 运算符,如下面的示例所示:
var xml:XML = <student id="206"> <class name="Trigonometry" /> <class name="Spanish 2" /> </student> trace(xml.elements("class"));
hasComplexContent | () | 方法 |
AS3 function hasComplexContent():Boolean
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
检查该 XML 对象是否包含复杂内容。如果 XML 对象具有子元素,则表明它包含复杂内容。表示属性、注释、处理指令和文本节点的 XML 对象不包含复杂内容。但是,仍可将包含上述内容的对象视为包含复杂内容(条件是该对象具有子元素)。
返回
Boolean — 如果 XML 对象包含复杂内容,则为 true ,否则为 false 。 |
另请参见
示例
a
的属性,以及一个包含复杂内容的名为 a
的属性:
var xml:XML = <foo> <a> text </a> <a> <b/> </a> </foo>; trace(xml.a[0].hasComplexContent()); // false trace(xml.a[1].hasComplexContent()); // true trace(xml.a[0].hasSimpleContent()); // true trace(xml.a[1].hasSimpleContent()); // false
hasOwnProperty | () | 方法 |
AS3 function hasOwnProperty(p:String):Boolean
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
检查该对象是否具有 p
参数所指定的属性。
参数
p:String — 要匹配的属性。 |
返回
Boolean — 如果此属性存在,则为 true ;否则为 false 。 |
另请参见
示例
hasOwnProperty()
方法,以确保属性 (b
) 在计算使用该属性的表达式 (b == "11"
) 之前便已存在:
var xml:XML = <foo> <a /> <a> <b>10</b> </a> <a> <b>11</b> </a> </foo>; trace(xml.a.(hasOwnProperty("b") && b == "11"));
a
)不具有名为 b
的属性:
trace(xml.a.(b == "11"));
hasOwnProperty()
方法,以确保属性 (item
) 在计算使用该属性的表达式 (item.contains("toothbrush")
) 之前便已存在:
var xml:XML = <orders> <order id='1'> <item>toothbrush</item> <item>toothpaste</item> </order> <order> <returnItem>shoe polish</returnItem> </order> </orders>; trace(xml.order.(hasOwnProperty("item") && item.contains("toothbrush")));
hasSimpleContent | () | 方法 |
AS3 function hasSimpleContent():Boolean
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
检查该 XML 对象是否包含简单内容。如果 XML 对象表示文本节点、属性节点或不包含子元素的 XML 元素,则表明它包含简单内容。表示注释和处理指令的 XML 对象不包含简单内容。
返回
Boolean — 如果 XML 对象包含简单内容,则为 true ,否则为 false 。 |
另请参见
示例
a
的属性,以及一个包含复杂内容的名为 a
的属性:
var xml:XML = <foo> <a> text </a> <a> <b/> </a> </foo>; trace(xml.a[0].hasComplexContent()); // false trace(xml.a[1].hasComplexContent()); // true trace(xml.a[0].hasSimpleContent()); // true trace(xml.a[1].hasSimpleContent()); // false
inScopeNamespaces | () | 方法 |
AS3 function inScopeNamespaces():Array
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
根据该 XML 对象的父项列出其命名空间。
返回
Array — Namespace 对象的数组。 |
另请参见
insertChildAfter | () | 方法 |
AS3 function insertChildAfter(child1:Object, child2:Object):*
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
在该 XML 对象的 child1
参数后插入给定的 child2
参数并返回生成的对象。如果 child1
参数为 null
,则该方法将在 XML 对象的所有子项之前 插入 child2
的内容(也就是说,不 在任何子项之后)。如果提供 child1
,但 XML 对象中不包含该参数,则不修改该 XML 对象并返回 undefined
。
如果对不是元素(文本、属性、注释、pi 等等)的 XML 子项调用该方法,则返回 undefined
。
使用 delete
(XML) 运算符删除 XML 节点。
参数
child1:Object — 在 child2 之前插入的源对象中的对象。 |
|
child2:Object — 要插入的对象。 |
返回
* — 生成的 XML 对象或 undefined 。 |
另请参见
示例
var xml:XML = <menu> <item>burger</item> <item>soda</item> </menu>; xml.insertChildAfter(xml.item[0], <saleItem>fries</saleItem>); trace(xml);
trace()
输出如下所示:
<menu>
<item>burger</item>
<saleItem>fries</saleItem>
<item>soda</item>
</menu>
insertChildBefore | () | 方法 |
AS3 function insertChildBefore(child1:Object, child2:Object):*
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
在该 XML 对象的 child1
参数前插入给定的 child2
参数并返回生成的对象。如果 child1
参数为 null
,则该方法将在 XML 对象的所有子项之后 插入 child2
的内容(也就是说,不 在任何子项之前)。如果提供 child1
,但 XML 对象中不包含该参数,则不修改该 XML 对象并返回 undefined
。
如果对不是元素(文本、属性、注释、pi 等等)的 XML 子项调用该方法,则返回 undefined
。
使用 delete
(XML) 运算符删除 XML 节点。
参数
child1:Object — 在 child2 之后插入的源对象中的对象。 |
|
child2:Object — 要插入的对象。 |
返回
* — 生成的 XML 对象或 undefined 。 |
另请参见
示例
var xml:XML = <menu> <item>burger</item> <item>soda</item> </menu>; xml.insertChildBefore(xml.bar[0], <saleItem>fries</saleItem>); trace(xml);
trace()
输出如下所示:
<menu>
<saleItem>fries</saleItem>
<item>burger</item>
<item>soda</item>
</menu>
length | () | 方法 |
AS3 function length():int
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
对于 XML 对象,该方法始终返回整数 1
。XMLList 类的 length()
方法对仅包含一个值的 XMLList 对象返回值 1
。
返回
int — 对于任何 XML 对象,始终返回 1 。 |
另请参见
localName | () | 方法 |
AS3 function localName():Object
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
提供该 XML 对象限定名称的本地名称部分。
返回
Object — 作为 String 或 null 的本地名称。 |
另请参见
示例
localName()
方法:
var xml:XML = <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:wx = "http://example.com/weather"> <wx:forecast> <wx:city>Quito</wx:city> </wx:forecast> </soap:Body> </soap:Envelope>; trace(xml.localName()); // Envelope
name | () | 方法 |
AS3 function name():Object
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
提供该 XML 对象的限定名称。
返回
Object — 限定名称为 QName 或 null 。 |
另请参见
示例
name()
方法获取 XML 对象的限定名称:
var xml:XML = <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:wx = "http://example.com/weather"> <wx:forecast> <wx:city>Quito</wx:city> </wx:forecast> </soap:Body> </soap:Envelope>; trace(xml.name().localName); // Envelope trace(xml.name().uri); // "http://www.w3.org/2001/12/soap-envelope"
name()
方法:
var xml:XML = <foo x="15" y="22"> text </foo>; trace(xml.name().localName); // foo trace(xml.name().uri == ""); // true trace(xml.children()[0]); // text trace(xml.children()[0].name()); // null trace(xml.attributes()[0]); // 15 trace(xml.attributes()[0].name()); // x
namespace | () | 方法 |
AS3 function namespace(prefix:String = null):*
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
如果没有提供参数,则提供与该 XML 对象的限定名关联的命名空间。如果指定了 prefix
参数,则该方法将返回与 prefix
参数匹配且位于 XML 对象所在范围内的命名空间。如果不存在此类命名空间,该方法将返回 undefined
。
参数
prefix:String (default = null ) — 要匹配的前缀。 |
返回
* — 返回 null 、undefined 或命名空间。 |
另请参见
示例
namespace()
方法获取 XML 对象的命名空间,并将其分配给名为 soap
的 Namespace 对象,随后将使用该对象标识 xml
对象 (xml.soap::Body[0]
):
var xml:XML = <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:wx = "http://example.com/weather"> <wx:forecast> <wx:city>Quito</wx:city> </wx:forecast> </soap:Body> </soap:Envelope>; var soap:Namespace = xml.namespace(); trace(soap.prefix); // soap trace(soap.uri); // http://www.w3.org/2001/12/soap-envelope var body:XML = xml.soap::Body[0]; trace(body.namespace().prefix); // soap trace(xml.namespace().uri); // http://www.w3.org/2001/12/soap-envelope trace(body.namespace("wx").uri); // "http://example.com/weather"
namespace()
方法获取节点的默认命名空间,以及特定前缀 ("dc"
) 的命名空间:
var xml:XML = <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/"> <!-- ... --> </rdf:RDF>; trace(xml.namespace()); // http://www.w3.org/1999/02/22-rdf-syntax-ns# trace(xml.namespace("dc")); // http://purl.org/dc/elements/1.1/ trace(xml.namespace("foo")); // undefined
namespaceDeclarations | () | 方法 |
AS3 function namespaceDeclarations():Array
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
在该 XML 对象的父项中列出与其关联的命名空间声明。
返回
Array — Namespace 对象的数组。 |
另请参见
示例
var xml:XML = <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/"> <!-- ... --> </rdf:RDF>; for (var i:uint = 0; i < xml.namespaceDeclarations().length; i++) { var ns:Namespace = xml.namespaceDeclarations()[i]; var prefix:String = ns.prefix; if (prefix == "") { prefix = "(default)"; } trace(prefix + ":" , ns.uri); }
trace()
输出如下所示:
rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
dc: http://purl.org/dc/elements/1.1/
(default): http://purl.org/rss/1.0/
nodeKind | () | 方法 |
AS3 function nodeKind():String
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
指定节点的类型:文本、注释、处理指令、属性或元素。
返回
String — 所使用的节点类型。 |
另请参见
示例
XML.ignoreComments = false; XML.ignoreProcessingInstructions = false; var xml:XML = <example id="10"> <!-- this is a comment --> <?test this is a pi ?> and some text </example>; trace(xml.nodeKind()); // element trace(xml.children()[0].nodeKind()); // comment trace(xml.children()[1].nodeKind()); // processing-instruction trace(xml.children()[2].nodeKind()); // text trace(xml.@id[0].nodeKind()); // attribute
normalize | () | 方法 |
AS3 function normalize():XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
对于该 XML 对象以及所有子级 XML 对象,合并相邻文本节点并删除空文本节点。
返回
XML — 生成的标准 XML 对象。 |
另请参见
示例
normalize()
方法的效果:
var xml:XML = <body></body>; xml.appendChild("hello"); xml.appendChild(" world"); trace(xml.children().length()); // 2 xml.normalize(); trace(xml.children().length()); // 1
parent | () | 方法 |
AS3 function parent():*
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回 XML 对象的父项。如果该 XML 对象没有父项,则该方法返回 undefined
。
返回
* — 父 XML 对象。返回 String 或 null 。 |
另请参见
示例
parent()
方法标识 XML 结构中特定元素的父项:
var xml:XML = <body> <p id="p1">Hello</p> <p id="p2">Test: <ul> <li>1</li> <li>2</li> </ul> </p> </body>; var node:XML = xml.p.ul.(li.contains("1"))[0]; // == <ul> ... </ul> trace(node.parent().@id); // p2
prependChild | () | 方法 |
AS3 function prependChild(value:Object):XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
将提供的 child
对象的副本插入 XML 元素中,并放在该元素的任何现有 XML 属性前面。
使用 delete
(XML) 运算符删除 XML 节点。
参数
value:Object — 要插入的对象。 |
返回
XML — 生成的 XML 对象。 |
另请参见
示例
prependChild()
方法将元素添加到 XML 对象子级列表的开头:
var xml:XML = <body> <p>hello</p> </body>; xml.prependChild(<p>world</p>); trace(xml.p[0].toXMLString()); // <p>world</p> trace(xml.p[1].toXMLString()); // <p>hello</p>
processingInstructions | () | 方法 |
AS3 function processingInstructions(name:String = "*"):XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
如果提供 name
参数,则列出包含该 name
的处理指令的 XML 对象的所有子项。如果未提供参数,则该方法会列出包含任何处理指令的 XML 对象的所有子项。
参数
name:String (default = "* ") — 要匹配的处理指令的名称。 |
返回
XMLList — 匹配的子对象的列表。 |
另请参见
示例
processingInstructions()
方法获取 XML 对象的处理指令数组:
XML.ignoreProcessingInstructions = false; var xml:XML = <body> foo <?xml-stylesheet href="headlines.css" type="text/css" ?> <?instructionX ?> </body>; trace(xml.processingInstructions().length()); // 2 trace(xml.processingInstructions()[0].name()); // xml-stylesheet
propertyIsEnumerable | () | 方法 |
AS3 function propertyIsEnumerable(p:String):Boolean
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
检查属性 p
所在的属性集是否可在应用于 XMLList 对象的 for..in
语句中遍历。仅当 toString(p) == "0"
时返回 true
。
参数
p:String — 要检查的属性。 |
返回
Boolean — 如果该属性可以在 for..in 语句中,为 true ;否则为 false 。 |
另请参见
示例
propertyNameIsEnumerable()
方法返回值 true
(仅对于值 0
),而对于 XMLList 对象,返回值为 true
(对于 XMLList 对象的每个有效索引值):
var xml:XML = <body> <p>Hello</p> <p>World</p> </body>; trace(xml.propertyIsEnumerable(0)); // true trace(xml.propertyIsEnumerable(1)); // false for (var propertyName:String in xml) { trace(xml[propertyName]); } var list:XMLList = xml.p; trace(list.propertyIsEnumerable(0)); // true trace(list.propertyIsEnumerable(1)); // true trace(list.propertyIsEnumerable(2)); // false for (var propertyName:String in list) { trace(list[propertyName]); }
removeNamespace | () | 方法 |
AS3 function removeNamespace(ns:Namespace):XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
删除该对象及其所有子级的给定命名空间。如果命名空间由该对象的限定名称或该对象属性的限定名称引用,则 removeNamespace()
方法不会删除该命名空间。
参数
ns:Namespace — 要删除的命名空间。 |
返回
XML — 生成的 XML 对象的副本。 |
另请参见
示例
var xml:XML = <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/"> <!-- ... --> </rdf:RDF>; trace(xml.namespaceDeclarations().length); // 3 trace(xml.namespaceDeclarations()[0] is String); // var dc:Namespace = xml.namespace("dc"); xml.removeNamespace(dc); trace(xml.namespaceDeclarations().length); // 2
replace | () | 方法 |
AS3 function replace(propertyName:Object, value:XML):XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
用给定的 value
参数替换 propertyName
参数所指定的属性。如果没有属性与 propertyName
匹配,会将 XML 对象保持为未修改状态。
参数
propertyName:Object — 可以是数值、XML 元素集的非限定名称、XML 元素集的限定名称或星号通配符 (*)。使用非限定名称标识默认命名空间中的 XML 元素。 |
|
value:XML — 替换值。它可以是 XML 对象、XMLList 对象或可以使用 toString() 转换的任何值。 |
返回
XML — 生成的 XML 对象,其中替换了匹配属性。 |
另请参见
示例
replace()
方法时将整数作为第一个参数:
var xml:XML = <body> <p>Hello</p> <p>World</p> <hr/> </body>; xml.replace(1, <p>Bob</p>); trace(xml);
trace()
输出:
<body>
<p>Hello</p>
<p>Bob</p>
<hr/>
</body>
replace()
方法时将字符串作为第一个参数:
var xml:XML = <body> <p>Hello</p> <p>World</p> <hr/> </body>; xml.replace("p", <p>Hi</p>); trace(xml);
trace()
输出:
<body>
<p>Hi</p>
<hr/>
</body>;
replace()
方法时将 QName 作为第一个参数:
var xml:XML = <ns:body xmlns:ns = "myNS"> <ns:p>Hello</ns:p> <ns:p>World</ns:p> <hr/> </ns:body>; var qname:QName = new QName("myNS", "p"); xml.replace(qname, <p>Bob</p>); trace(xml);
trace()
输出:
<ns:body xmlns:ns = "myNS">
<p>Bob</p>
<hr/>
</ns:body>
replace()
方法时将字符串 "*"
作为第一个参数:
var xml:XML = <body> <p>Hello</p> <p>World</p> <hr/> </body>; xml.replace("*", <img src = "hello.jpg"/>); trace(xml);
trace()
输出:
<body>
<img src="hello.jpg"/>
</body>
setChildren | () | 方法 |
AS3 function setChildren(value:Object):XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
用 value
参数中提供的指定 XML 属性集替换该 XML 对象的子属性。
参数
value:Object — 替换 XML 属性。可以是单个 XML 对象或 XMLList 对象。 |
返回
XML — 生成的 XML 对象。 |
另请参见
示例
setChildren()
方法时,先使用 XML 对象作为参数,然后使用 XMLList 对象作为参数:
var xml:XML = <body> <p>Hello</p> <p>World</p> </body>; var list:XMLList = xml.p; xml.setChildren(<p>hello</p>); trace(xml); // <body> // <p>hello</p> // </body> xml.setChildren(list); trace(xml); // <body> // <p>Hello</p> // <p>World</p> // </body>
setLocalName | () | 方法 |
AS3 function setLocalName(name:String):void
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
将该 XML 对象的本地名称更改为给定的 name
参数。
参数
name:String — 本地名称的替换名称。 |
另请参见
示例
setLocalName()
方法更改 XML 元素的本地名称:
var xml:XML = <ns:item xmlns:ns="http://example.com"> toothbrush </ns:item>; xml.setLocalName("orderItem"); trace(xml.toXMLString()); // <ns:orderItem xmlns:ns="http://example.com">toothbrush</ns:orderItem>
setName | () | 方法 |
AS3 function setName(name:String):void
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
将该 XML 对象的名称设置为给定限定名称或属性名。
参数
name:String — 对象的新名称。 |
另请参见
示例
setName()
方法更改 XML 元素的名称:
var xml:XML = <item> toothbrush </item>; xml.setName("orderItem"); trace(xml.toXMLString()); // <orderItem>toothbrush</orderItem>
setNamespace | () | 方法 |
AS3 function setNamespace(ns:Namespace):void
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
设置与该 XML 对象关联的命名空间。
参数
ns:Namespace — 新命名空间。 |
另请参见
示例
soap
命名空间,并将其应用于另一个 XML 对象 (xml2
) 的命名空间:
var xml1:XML = <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <!-- ... --> </soap:Envelope>; var ns:Namespace = xml1.namespace("soap"); var xml2:XML = <Envelope> <Body/> </Envelope>; xml2.setNamespace(ns); trace(xml2);
setSettings | () | 方法 |
AS3 static function setSettings(... rest):void
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
设置下列 XML 属性的值:ignoreComments
、ignoreProcessingInstructions
、ignoreWhitespace
、prettyIndent
和 prettyPrinting
。以下是默认设置,如果未提供 setObj
参数,将应用这些设置:
XML.ignoreComments = true
XML.ignoreProcessingInstructions = true
XML.ignoreWhitespace = true
XML.prettyIndent = 2
XML.prettyPrinting = true
注意:不要将此方法应用于 XML 类的实例;应将其应用于 XML
,如以下代码所示:XML.setSettings()
。
参数
... rest — 具有下列各个属性的对象:
|
另请参见
ignoreProcessingInstructions
ignoreWhitespace
prettyIndent
prettyPrinting
defaultSettings()
settings()
Function parameters
XML objects
示例
XML.ignoreComments = false; XML.ignoreProcessingInstructions = false; var customSettings:Object = XML.settings(); var xml1:XML = <foo> <!-- comment --> <?instruction ?> </foo>; trace(xml1.toXMLString()); // <foo> // <!-- comment --> // <?instruction ?> // </foo> XML.setSettings(XML.defaultSettings()); var xml2:XML = <foo> <!-- comment --> <?instruction ?> </foo>; trace(xml2.toXMLString());
settings | () | 方法 |
AS3 static function settings():Object
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
检索下列属性:ignoreComments
、ignoreProcessingInstructions
、ignoreWhitespace
、prettyIndent
和 prettyPrinting
。
返回
Object — 具有下列 XML 属性的对象:
|
另请参见
XML.ignoreProcessingInstructions
XML.ignoreWhitespace
XML.prettyIndent
XML.prettyPrinting
XML.defaultSettings()
XML.setSettings()
示例
XML.ignoreComments = false; XML.ignoreProcessingInstructions = false; var customSettings:Object = XML.settings(); var xml1:XML = <foo> <!-- comment --> <?instruction ?> </foo>; trace(xml1.toXMLString()); // <foo> // <!-- comment --> // <?instruction ?> // </foo> XML.setSettings(XML.defaultSettings()); var xml2:XML = <foo> <!-- comment --> <?instruction ?> </foo>; trace(xml2.toXMLString());
text | () | 方法 |
AS3 function text():XMLList
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回 XML 对象用来表示 XML 文本节点的所有 XML 属性的 XMLList 对象。
返回
XMLList — 属性列表。 |
另请参见
示例
text()
方法获得 XML 对象的文本节点:
var xml:XML = <body> text1 <hr/> text2 </body>; trace(xml.text()[0]); // text1 trace(xml.text()[1]); // text2
toString | () | 方法 |
AS3 function toString():String
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回 XML 对象的字符串表示形式。此转换的规则取决于 XML 对象包含的是简单内容还是复杂内容:
- 如果 XML 对象包含简单内容,
toString()
将返回 XML 对象的字符串内容,但从中除去了以下内容:开始标签、属性、命名空间声明和结束标签。
- 如果 XML 对象包含复杂内容,
toString()
将返回 XML 编码字符串,该字符串表示完整的 XML 对象,包括开始标签、属性、命名空间声明和结束标签。
若要每次都返回整个 XML 对象,请使用 toXMLString()
。
返回
String — XML 对象的字符串表示形式。 |
另请参见
示例
toString()
方法的返回值:
var test:XML = <type name="Joe">example</type>; trace(test.toString()); //example
toString()
方法的返回值:
var test:XML = <type name="Joe"> <base name="Bob"></base> example </type>; trace(test.toString()); // <type name="Joe"> // <base name="Bob"/> // example // </type>
toXMLString | () | 方法 |
AS3 function toXMLString():String
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回 XML 对象的字符串表示形式。与 toString()
方法不同,toXMLString()
方法始终返回 XML 对象的开始标签、属性和结束标签,与 XML 对象包含的是简单内容还是复杂内容无关。(toString()
方法去除包含简单内容的 XML 对象的这些项。)
返回
String — XML 对象的字符串表示形式。 |
另请参见
示例
toString()
方法(默认情况下适用于 trace()
方法的所有参数)与使用 toXMLString()
方法之间的区别:
var xml:XML = <p>hello</p>; trace(xml); // hello trace(xml.toXMLString()); // <p>hello</p>
valueOf | () | 方法 |
AS3 function valueOf():XML
语言版本 : | ActionScript 3.0 |
RuntimeVersions: | AIR 1.0, Flash Player 9 |
返回该 XML 对象。
返回
XML — XML 实例的原始值。 |
另请参见
示例
valueOf()
方法返回的值与源 XML 对象相同:
var xml:XML = <p>hello</p>; trace(xml.valueOf() === xml); // true
@
) 符号用在多个 trace()
调用中,以按属性名称查找信息。
package { import flash.display.Sprite; public class XmlExample extends Sprite { public function XmlExample() { var employees:XML = <employees> <employee ssn="123-123-1234"> <name first="John" last="Doe"/> <address> <street>11 Main St.</street> <city>San Francisco</city> <state>CA</state> <zip>98765</zip> </address> </employee> <employee ssn="789-789-7890"> <name first="Mary" last="Roe"/> <address> <street>99 Broad St.</street> <city>Newton</city> <state>MA</state> <zip>01234</zip> </address> </employee> </employees>; trace(employees.employee[0].address.zip); // 98765 trace(employees.employee[1].@ssn); // 789-789-7890 trace(employees.employee.name); // <name first="John" last="Doe"/> // <name first="Mary" last="Roe"/> trace(employees..zip[0]); // 98765 trace(employees..@ssn[1]); // 789-789-7890 trace(employees..name); // <name first="John" last="Doe"/> // <name first="Mary" last="Roe"/> trace(employees.employee[0].address.*); // <street>11 Main St.</street> // <city>San Francisco</city> // <state>CA</state> // <zip>98765</zip> var node:String = "zip"; trace(employees.employee[0].address[node]); // 98765 var attribute:String = "ssn"; trace(employees.employee[1].@[attribute]); // 789-789-7890 for each (var num:XML in employees..@ssn) { trace(num); // 123-123-1234 } // 789-789-7890 var ssnToFind:String = "789-789-7890"; trace(employees.employee.(@ssn == ssnToFind).toXMLString()); // <employee ssn="789-789-7890"> // <name first="Mary" last="Roe"/> // <address> // <street>99 Broad St.</street> // <city>Newton</city> // <state>MA</state> // <zip>01234</zip> // </address> // </employee> } } }