[英]XML As XMLNode in Actionscript/Flex
如何在Actionscript中獲取XML對象的根節點?
有人會認為我可以這樣說:
var Node:XMLNode = XMLVar as XMLNode;
但是雖然XMLVar是XML類型,但Node = null。
那我該怎么做?
您的代碼有點令人困惑,因為您為變量名使用大寫的第一個字符。 看看Adobe的AS3編碼約定 。
var xmlData:XML = new XML();
var node:XMLNode = xmlData.firstChild();
這個例子很沒用,但它只是演示了這個方法。
使用XML對象的firstChild方法 。 將第一個節點作為XMLNode對象。
var node:XMLNode = xmlVar as XMLNode;
雖然xmlVar是
XML
類型
XML
和XMLNode
在ActionScript-3中不兼容。 AS2的XML
類(及其相關類)已在AS3中重命名為flash.xml.XMLDocument
。
XMLNode
/XMLDocument
類表示ActionScript 2.0中存在且在ActionScript 3.0中重命名的舊XML
對象。 在ActionScript 3.0中,請考慮使用新的頂級XML
類和相關類,它們支持E4X(ECMAScript for XML)。XMLNode
/XMLDocument
類用於向后兼容。
XML
類型的對象不能直接轉換為XMLNode
。 由於您嘗試使用as
關鍵字進行強制轉換,因此它只返回null
而不是發出警告說投射失敗。
如前所述,請考慮對變量使用lowerCase名稱,因為UpperCase名稱通常用於命名類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.