FLASH中的数据类型和变量研究

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

一、FLASH中的数据类型

1、字符串值 例:mytext="f4",mytex就是字符串,字符串就是由字符组成的序列

2、数值 例 mynum=2 mynum就是数值,可以用数学运算符号对他们进行运算。

3、逻辑值 例 mypass=false mypass就是逻辑值假,逻辑值只有两个值,一个是 true;一个是false.

4、对象 对象是属性的集合,每个属性又有自己的名称和值,例如:a.b.c="阿", c的值是字符串“阿”,c是对象b的属性;b是对象a的属性。再例:mc.play() mc 是舞台上的影片剪辑对象,MovieClip包含的方法play可以对舞台上的对象进行控制.

5、电影剪辑 电影剪辑是FLASH中可以播放动画的符号,它是唯一引用图形元素的数据类型。

6、空值 空值只有一个值null,它是对不存在的值的引用。

7、未定义的值。未定义的值也只有一个值undefined ,它是用于尚未指定值的变量。

以上7种类型只是简要的介绍,不想说的过多,要想真正理解他们,还要结合变量等知识,进行综合的学习,而无法孤立的学好他们。

二、FLASH中的变量

变量实际上就是一个信息容器。容器的特征是本身是一样的,但其中装的东西就可以不同,例如:一个酒瓶,可以装酒,也可以装水,还可以装煤油。而用数学中的代数理解:x=2之后,x也可以等于3

FLASH中有三种变量,局部变量 时间轴变量 全局变量

要申明一个变量很简单,比如:

var i=1 这样我们就申明了一个局部变量,并且已经赋值。

i=1 这样我们就申明了一个时间轴变量,并且已经赋值。

_global.i=1 这样我们就申明了一个全局变量,并且已经赋值。

在申明变量的时候,有几个问题值得我们注意:

1、变量的名字由字母或者字母与数组组成,不可以全部由数字组成,当然更不可以是中文字;变量名不可以用FLASH中的关键字和逻辑值,即:像play stop 这些显示为深蓝色的单词。

2、局部变量是只在本语句块中有效的变量;时间轴变量是可以通过目标路径进行访问的变量,全局变量是在整个FLASH中都有效的变量。

3、建议多多采用var 申明局部变量,这样可以有效地控制变量的冲突,并且严格的规定变量的数据类型,当输入var i:的时候,会自动的列出类型让我们选择。

三、学会使用trace对数据进行跟踪。现在我们用实例来说明有关的变量数据知识。

例1: 将以下AS写在桢上

on (press) {//鼠标在按钮上按下

trace(myNum)//输出变量,由于没有定义,所以第一次输出是 undefined

if (myNum == undefined) {//第一次点击此条件成立

myNum = 1;//执行此定义变量并且进行赋值的命令

} else {

myNum++;//否则变量自身+=1

}

}

点评: 第一次点击按钮后,由于myNum是未定义的,所以输出myNum之后执行myNum = 1;第二次点击后,由于已经申明此变量,故执行myNum++,输出 2;以后输出3、4、5......

例2:在舞台上创建一个MC,取实例名为mc ,双击此MC,在此MC内莰入一个MC ,取实例名为mc1,选中此mc1,打开动作面板,输入:

onClipEvent(load){

vari:Number=0

}

然后返回到场景,选中mc,打开动作面板输入:

on(press){

trace(i)

}

点击后输出的是undefined,再重新写

on(press){

trace(this.mc1.i)

}

点评: 现在输出0了,什么原因呢? 因为i是定义在mc1中,而当前点击的对象是mc,mc下并没有变量i ,i在mc的mc1中,因此必须通过路径才能进行访问.

例3:

function go(){

var i:Number=0

}

trace(i)

function go(){

i=0

}

trace(i)

比较输出的结果有什么不同。

点评:前者输出的是 undefined,因为局部变量只在本语句块有效,后者不是局部变量,因此出了语句块仍然有效。

练习建议:下载此FLA,只在按钮上输入AS,输入单次播放;输入双次停止。提示:用数据undefined 逻辑值 、计数器

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有