AS3 - 更新Vars

时间:2009-10-03 15:57:12

标签: flash actionscript-3 scope

我有一个var来获取缩略图宽度,它设置在我的类代码的开头。

var thumbW:Number;

然后我在一个使用stage resize更新的函数内更新var。

function x(){
    var thumbW:thumbnails.width;
    //tracing thumbW here returns the updated value. Perfect!
}

然后我尝试在滚动缩略图的函数中获取 thumbW

function y(){
    trace(thumbW);
}

但是,在 y 函数中,它只返回 NaN ,又名非数字,告诉我该变量的值未设置也未更新。

我想知道为什么会这样?为什么我无法更新此var?怎么办呢?

1 个答案:

答案 0 :(得分:0)

你的函数x有问题。

如果要访问全局变量thumbW,则应直接使用它thumbW = 123。使用var将在函数内声明另一个局部变量。

而且,为什么你把旗帜thumbnails.width?应该有编译错误!错字?

函数x的整个代码应为:

function x():void {
    thumbW = thumbnails.width;
}
顺便说一下,您应该了解有关变量范围的更多信息。有an article from adobe help