XML 对象

Flash Player 9 和更高版本,Adobe AIR 1.0 和更高版本

XML 对象可能表示 XML 元素、属性、注释、处理指令或文本元素。

XML 对象分为包含简单内容和包含复杂内容两类。有子节点的 XML 对象归入包含复杂内容的一类。如果 XML 对象是属性、注释、处理指令或文本节点之中的任何一个,我们就说它包含简单内容。

例如,下面的 XML 对象包含复杂内容,包括一条注释和一条处理指令:

XML.ignoreComments = false; 
XML.ignoreProcessingInstructions = false; 
var x1:XML =  
    <order> 
        <!--This is a comment. --> 
        <?PROC_INSTR sample ?> 
        <item id='1'> 
            <menuName>burger</menuName> 
            <price>3.95</price> 
        </item> 
        <item id='2'> 
            <menuName>fries</menuName> 
            <price>1.45</price> 
        </item> 
    </order>

如下面的示例所示,现在可以使用 comments()processingInstructions() 方法创建新的 XML 对象(一个是注释,一个是处理指令):

var x2:XML = x1.comments()[0]; 
var x3:XML = x1.processingInstructions()[0];

XML 属性

XML 类有五个静态属性:

  • ignoreCommentsignoreProcessingInstructions 属性确定分析 XML 对象时是否忽略注释或处理指令。

  • ignoreWhitespace 属性确定在只由空白字符分隔的元素标签和内嵌表达式中是否忽略空白字符。

  • prettyIndentprettyPrinting 属性用于设置由 XML 类的 toString()toXMLString() 方法返回的文本的格式。

有关这些属性的详细信息,请参阅用于 Adobe Flash Platform 的 ActionScript 3.0 参考

XML 方法

以下是 XML 对象的分层结构的使用方法:

  • appendChild()

  • child()

  • childIndex()

  • children()

  • descendants()

  • elements()

  • insertChildAfter()

  • insertChildBefore()

  • parent()

  • prependChild()

以下方法可与 XML 对象属性一起使用:

  • attribute()

  • attributes()

以下方法可与 XML 对象属性一起使用:

  • hasOwnProperty()

  • propertyIsEnumerable()

  • replace()

  • setChildren()

以下方法用于与限定名和命名空间一起使用:

  • addNamespace()

  • inScopeNamespaces()

  • localName()

  • name()

  • namespace()

  • namespaceDeclarations()

  • removeNamespace()

  • setLocalName()

  • setName()

  • setNamespace()

以下方法用于使用和确定某些类型的 XML 内容:

  • comments()

  • hasComplexContent()

  • hasSimpleContent()

  • nodeKind()

  • processingInstructions()

  • text()

以下方法用于转换为字符串和设置 XML 对象的格式:

  • defaultSettings()

  • setSettings()

  • settings()

  • normalize()

  • toString()

  • toXMLString()

另外还有几个方法:

  • contains()

  • copy()

  • valueOf()

  • length()

有关这些方法的详细信息,请参阅用于 Adobe Flash Platform 的 ActionScript 3.0 参考