|
主题: 关于变量
|
 shuihan
职务:普通成员
等级:1
金币:0.0
发贴:100
注册:2001/10/18 8:49:46
|
#12001/11/4 19:59:17
请问变量是不是可以不要经过初始化,请看这段: on (keyPress "") { //当按下键盘按键 Left co = getProperty("/mc", _x); //取得场景下mc影片剪辑的x坐标值,并存入co变量中 co = co-5; //co变量的值减5 (mc向左移) setProperty ("/mc", _x, co); //将场景下影片剪辑mc的x坐标值设定为co变量的值 } 其中co为一个存储变量,在代码中根本没有co=0等函数,为什么有的代码要对变量设置一下初始值,有的又不要呢?
编辑历史:[这消息被爱老虎油编辑过(编辑时间2001-11-04 21:18:32)]
|
 5D荣誉斑竹
职务:普通成员
等级:1
金币:10.0
发贴:265
注册:2000/12/16 0:32:09
|
#22001/11/4 20:47:24
shuihan在上个帖子中说 引用: 请问变量是不是可以不要经过初始化,请看这段: on (keyPress "") { //当按下键盘按键 Left co = getProperty("/mc", _x); //取得场景下mc影片剪辑的x坐标值,并存入co变量中 co = co-5; //co变量的值减5 (mc向左移) setProperty ("/mc", _x, co); //将场景下影片剪辑mc的x坐标值设定为co变量的值 } 其中co为一个存储变量,在代码中根本没有co=0等函数,为什么有的代码要对变量设置一下初始值,有的又不要呢?
AS的语法不要求对变量初始化; 是否需要设初值,完全视程序的要求与否而定。
|
 janlay
职务:管理员
等级:7
金币:28.0
发贴:7244
注册:2003/11/27 18:07:11
|
#32001/11/5 10:47:00
如果是在第一次引用时就要参与表达式计算,flash就需要知道该变量的值,这时,要对变量赋初值;否则,该值为null,或出错。
如果用var 作前缀进行定义,则该变量的生存期为距离定义语句最近的花括号({})括住的范围,这一点和C类似。
|
 shuihan
职务:普通成员
等级:1
金币:0.0
发贴:100
注册:2001/10/18 8:49:46
|
#42001/11/5 11:20:32
令狐瓜子在上个帖子中说 引用: 是否需要设初值,完全视程序的要求与否而定。
那么什么时侯需要设初始值呢?
|
 椰兔
职务:普通成员
等级:1
金币:0.0
发贴:127
注册:2001/11/3 12:06:51
|
#52001/11/6 15:31:50
没有什么语言需要对变量设初值,每个变量所得到的第一个值都可以叫初值.你们所说的设初值大概是声明变量的意思.在AS中不需要对变量进行声明.这是我的理解.
|
 janlay
职务:管理员
等级:7
金币:28.0
发贴:7244
注册:2003/11/27 18:07:11
|
#62001/11/6 15:42:26
To shuihan: 引用:
如果是在第一次引用时就要参与表达式计算,flash就需要知道该变量的值。
To 椰兔: 声明和赋初值不是一个概念。很多高级语言都要求变量在使用前声明,声明中可以赋初值,也可以仅仅只是声明。 个人认为,声明是一种严谨的体现,也是个好习惯。对编写者来说,它比较实的功能就是防止将变量名写错。 actionscript和javascript一样,只是一种脚本语言,它们都无须事先声明变量。有时候,赋初值则是必须的。
|