AS3: access variable when writing XML code directl

2019-05-29 10:53发布

how can I access the value of a variable when writing XML code in AS3? something like this:

var myVar:Number = 3;

var xml:XML =
    <myXML>
        <valueOfMyVar>???</valueOfMyVar>
    </myXML>

what do I have to replace ??? with?

2条回答
等我变得足够好
2楼-- · 2019-05-29 11:13

ActionScript 3.0 now treats XML as a native data type meaning its no longer parsed as a String. That does bring with it that the old methods of inserting variable values (e.g. “”+myValue+””) no longer apply.

Just take a look at the following snippet of code:

var myVar:Number = 3;

var xml:XML =
<myXML>
    <valueOfMyVar>{myVar}</valueOfMyVar>
</myXML>

That’s right, the curly braces notation from MXML. One difference though, this is not an active reference to the variable. If you change the value of the variable this will not update your XML (no, not even in Flex — this is pure AS3 code but you can of course define the XML structure in MXML and take advantage of its data binding features).

Also worth noting is that you don’t put quotes around the curly braces when you use it for an XML attribute, if you do that it’ll treat it as a String rather than eval’ing it. The XML object takes care of generating valid XML from it.

查看更多
倾城 Initia
3楼-- · 2019-05-29 11:26
var myVar:Number = 3;

var xml:XML =
    <myXML>
        <valueOfMyVar></valueOfMyVar>
    </myXML>

xml.valueOfMyVar[0] = myVar;
查看更多
登录 后发表回答