as3 有趣现象 关于声明与变量

时间:2023-03-09 15:38:30
as3 有趣现象 关于声明与变量

当使用了一个变量,并且前后期都没有在有效域内对此声明,不管有没有赋值,都会报错。

但先使用了一个变量,后期在有效域内对此声明,那么此变量不报错,但在声明之前没有赋值,那么赋值默认值;如果使用变量时,赋值了,那么变量等于赋值值。

这就是有趣的声明前置(默认)

例子:

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 */