Xml 将值赋给函数内的全局变量操作脚本3

Xml 将值赋给函数内的全局变量操作脚本3,xml,actionscript-3,Xml,Actionscript 3,我是as3的新手。 我声明了一个全局变量,该变量接收xml格式的图像长度。我创建了一个用于xml加载完成的函数,一旦xml数据被完全加载,我就会得到长度。 我已经在函数内部跟踪了它,并输出了指定节点的正确编号,但当我在外部跟踪它时,该值消失了…我如何使该值被全局赋值,而不仅仅是在函数中…ty函数内部声明的变量仅对该函数的内容可见。如果要在该函数之外访问它,请至少在声明该函数的相同范围内声明一个变量,如: var myXmlLength:Number; function onXmlComplet

我是as3的新手。 我声明了一个全局变量,该变量接收xml格式的图像长度。我创建了一个用于xml加载完成的函数,一旦xml数据被完全加载,我就会得到长度。
我已经在函数内部跟踪了它,并输出了指定节点的正确编号,但当我在外部跟踪它时,该值消失了…我如何使该值被全局赋值,而不仅仅是在函数中…ty

函数内部声明的变量仅对该函数的内容可见。如果要在该函数之外访问它,请至少在声明该函数的相同范围内声明一个变量,如:

var myXmlLength:Number;

function onXmlComplete( evt:Event ):void
{
    myXmlLength = evt.target.data.length;
}

trace( myXmlLength );
此外,请确保您正在跟踪声明变量的整个路径。例如,如果将变量声明为3 movieclips deep,则跟踪可能如下所示:

trace( mc1.mc2.mc3.myXmlLength );
请注意,这是伪代码,实际上不会做任何事情,因为我不知道您的代码是如何设置的

如果您想要一个真正的全局变量,可以在as3中读取或查找所有可用的单例(一种有争议但不实用的方法)