当使用了一个变量,并且前后期都没有在有效域内对此声明,不管有没有赋值,都会报错。
但先使用了一个变量,后期在有效域内对此声明,那么此变量不报错,但在声明之前没有赋值,那么赋值默认值;如果使用变量时,赋值了,那么变量等于赋值值。
这就是有趣的声明前置(默认)
例子:
import flash.display.MovieClip; function traced()
{
trace("没声明直接使用 ,b 的值 : ",b)
b=0.5;
trace("没声明直接赋值 ,b 的值 : ",b)
var b:Number=.3;
trace("声明有赋值 ,b 的值 : ",b)
} traced()
/* 输出
没声明直接使用 ,b 的值 : NaN
没声明直接赋值 ,b 的值 : 0.5
声明有赋值 ,b 的值 : 0.3 */