|
运算符(1)
运算符是指定如何组合、比较或修改表达式值的字符。运算符对其执行运算的元素称为操作数。
注:表达式是 Flash 可以计算并返回值的任何语句。可以通过组合运算符和值或者调用函数来创建表达式。
Flash编程中经常需要应用到某一条件或是某一计算结果,再执行与条件和结果相关的操作。例如以下脚本通过表达式计算后,再跳转到相应的帧。
on(release){
gotoAndPlay (1+ 2) ;
}
上面脚本中的表达式,也就是1+2的值将使得时间轴跳转到第3 帧。显然,这十分简单。当然,用户甚至可以创建这样一个脚本,使用表达式以不同的方式完成相同的任务:
on (release) {
ja= 3;
jb= 24;
gotoAndPlay (ja + jb);
}
运算符(2)常用概念
整数和浮点数
整数是指1、2、3、10等没有小数位的数字。
浮点数是指1.3、4.5等含有小数位的数字。
字符串
字符串存储的是一组字符,字符串可以是一个字符也可以是一组单词,如“Hello China”、“Chinese”或“a”等都是字符串。字符串需要使用英文的双引号括起来,如“123”和123是完全不同的,前者代表字符串,后者是数字。
变量
变量是指某个没有确定值的表达式。如
number = 25,此时的number表示是25这个数。同样也可以将26这个值赋于number,表达式为number = 26,这里的number可以被赋以不确定的值。
变量可以是数字变量也可以是字符串变量。如nubmer = 25和char =“hello”。
运算
数字和字符串可以使用相应的运算式进行计算,变量也可以进行计算。如1 + 1 = 2,使用变量表示可以写成a = 1; b = 1;a + b = 2;。这里的a和b分别被赋予了数值1,然后两者再进行运算。
优先级
在进行运算时,运算是有顺序的,如1+2*3=7和(1+2)*3=9,结果是完全不同的,这里都遵循数字运算顺序关系,在编程中这些运算顺序与数学运算是完全一致的。
函数
函数就是数学表达式,如正弦sin、余弦cos等都是函数。也可以自定义函数,即定义一个所需的数学表达式。
运算符(3)运算符类型
表达式通常是需要靠运算符来最终完成的。在Flash中,运算符包括数字运算符、比较运算符、位运算符和逻辑运算符,用户可以通过点击按钮下拉菜单中的“运算符”子菜单内的相应命令添加需要的运算符。
数字运算符
当进行数值(或值为数字的变量)运算时,数字运算符可用来进行加或减之类的运算。下面列出了算术数字运算符。
+—加。表达式1 + 表达式2
-—减。表达式1 - 表达式2
*—乘。表达式1 * 表达式2
/—除。表达式1 / 表达式2
%—求余。表达式1 % 表达式2,如12 % 5=2
-—取负。-表达式
使用数字运算符时,需注意以下几点:
(1)表达式的运算按顺序执行。括号中的所有内容最先计算,然后进行乘除运算,最后才进行加减运算。因此,运算的顺序不同,最后的结果通常也不一样。
(2)如果用户试图用数字运算符来计算字符串,那么Flash会将字符串转换为数值。数值以字符串中的字符数为基础。例如,9+commend=16,因为commend包含7个字符。
逻辑运算符
在表达式中,用户可以使用逻辑运算符来判断某个条件是否存在。逻辑运算符主要用在if和do while 动作中。有关逻辑运算符及其功能如下所示:
&&(and)—逻辑与。表达式1 && 表达式2
||(or)—逻辑或。表达式1 || 表达式2
!(not)—逻辑否。!表达式
!=(<>)—不相等。表达式1 != 表达式2
<—小于。表达式1 < 表达式2
==—相等。表达式1 == 表达式2
>—大于。表达式1 > 表达式2
<=—小于等于。表达式1 <= 表达式2
>=—大于等于。表达式1 >= 表达式2
如果在表达式中使用逻辑运算符,可以判断当前所给出的条件是正确(true)的还是错误(false)的,来决定下一步执行什么样的操作。
字符串运算符
对于字符串类型的运算与一般数值运算不同,有其不同的运算符,下面列出了字符串类型的运算符。
“”—引号。用于表示字符串,如“111”是字符串而不是数字
add—字符串叠加。表达式1 add 表达式2,如"1" add "2" -> "12"
eq—字符串相等。表达式1 eq 表达式2
ne—字符串不相等。表达式1 ne 表达式2
lt—字符串小于。表达式1 lt 表达式2,如"12" lt "2"→true
gt—字符串大于。表达式1 gt 表达式2,如"12" gt "1"→ true
le—字符串小于等于。表达式1 le 表达式2
ge—字符串大于等于。表达式1 ge 表达式2
位运算符
Flash中还有一些专门针对二进制、9进制以及16进制数的位运算符,下面列出了Flash中使用的位运算符及其功能。
~—按位取反。~表达式,如~1=0,~0=1
&—按位与。表达式1 & 表达式2,如1&1=1,1&0=0,0&0=0
|—按位或。表达式1 | 表达式2,如1|1=1,1|0=1,0|0=0
^—按位异或。表达式1 ^ 表达式2,如1^1=0,1^0=1,0^0=0
<<—按位左移。表达式 << num,即左移num位,右补0
>>>—按位逻辑右移。表达式 >>> num,即右移num位,左补0
>>—按位算术右移。表达式 >> num,即右移num位,左补符号位
赋值运算符
在Flash中应用了大量赋值运算符,可以使设计的动作脚本更简洁,下面列出了Flash中使用的赋值运算符。
++—自加。变量++,++变量,相当于变量 = 变量 + 1
--—自减。变量--,--变量,相当于变量 = 变量 - 1
+=—自加赋值。变量 += 表达式,等价于变量= 变量 + 表达式
-=—自减赋值。变量 -= 表达式,等价于变量= 变量 - 表达式
*=—自乘赋值。变量 *= 表达式,等价于变量= 变量 * 表达式
/=—自除赋值。变量 /= 表达式,等价于变量= 变量 / 表达式
%=—自求余赋值。变量 %= 表达式,等价于变量= 变量 % 表达式
使用运算符为变量赋值
使用运算符为变量赋值
变量是程序设计脚本中最重要的组成部分。变量是组成数据软件、动态变化场景不可缺少的部分,例如在一个数据调查表中通常有以下选项:
Name = "武松"
Age = 26
Income = 5000
Bestdegree = "博导"
Name,Age,Income和Bestdegree均为变量名,而等号后面的信息则是该变量的值。在Flash的动作脚本中同样也是如此。用户可以通过点击动作面板中的“语句”→“变量”下的set variable命令来添加变量。当使用set variable动作时,用户可以创建变量Name、Age、Income和Bestdegree。
命令格式:set (Name,"武松"),或直接输入Name = "武松"。
在Flash中创建变量并为变量命名时,需注意以下几点:
(1)所有变量名必须以字符开头。该字符后面可以是字母、数字或下划线,而且,变量名不区分大小写。因此,My变量等同于my变量。变量名中不能含空格。
(2)每部影片或影片剪辑都有一组惟一的变量。
(3)变量的值可以改变,但是名称保持不变。例如,某一时刻影片播放到第25帧,稍后,它的值可能变成100帧。
(4)变量名应具有一定含义。如果变量所表示的值是用户点击按钮的次数,那么用户应将该变量命名为MouseClickCount或类似的名称。
变量的表示方法
在Flash中,变量值可以有以下形式:
(1)数字:数字值指的是从0到999999之间的任意值。例如:变量Income的值可能为9000,那么在动作脚本中应描述为:
Income = 9000
(2) 字符串:程序设计语言中字符串通常表示文本值。典型的字符串值可以是一个字母a,也可以是一个或多个句子,如Hello, how are you!。字符串值可以包含任意多个字母,并且可包括文本、空格、标点符号甚至数字。因此,用户可以把365当做一个字符串值来处理。含数字的字符串值用引号与实际数字区分开来,也就是说,动作脚本用引号表示字符串。这样,2004是数字,而"2004"则是一个字符串值。
(3)逻辑值:逻辑值用来判断某个条件是否存在。逻辑值有两种,true或false。在Flash中,用0表示false,任意非0值均表示true。为变量分配逻辑值时,设置如下所示:
MacromediaRocks= true
或
MacromediaRocks= 1
(4)空值:虽然它不是一个真正的值,但可表示某个不存在的字符串值。例如,如果用户记不起某人的姓名,那么可以用如下方式表示用户临时空缺的变量,此时,该变量其实仍然属于字符型变量。
temp_null = " "
分配值
在为变量分配值时,有两种形式,文字形式或表达式形式。以下是文字分配形式:
Income = 1000
或者
Name ="武松"
使用表达式创建一个变量并为该变量分配值,其操作步骤如下:
(1)在舞台中选择时间轴上某一关键帧的按钮实例。
(2)在该实例上右击,在弹出菜单中选择动作命令,打开动作面板。
(3)在动作面板中选择set variable命令。
(4)在set ()的括号中输入变量名和数值。
注:如果该变量的值是一个文本字符串,则需要带引号输入该字符串,如果希望这个值被当做数字、逻辑值或者表达式,直接输入即可。
使用变量
在Flash中,可以使用变量值动态地设置其他动作中的不同参数值。例如,将跳转到的帧数、影片剪辑实例的属性值甚至文本字段中的文本。
set variable(设置变量)动作具有以下参数:
(1)变量:要创建或更新的变量名。所有的变量名必须以字符开始,但是,随后的字符可以是字母、数字或下划线。用户可以根据表达式的值,动态地选择要创建或更新的变量。
(2)值:要创建或要更新的变量值。
以下脚本展示了一个鼠标事件,它将newvar的值设为300。设置好后,该变量的值将用来设置影片剪辑实例MyMovieClip的宽度。
on (release) {
newvar ="300";
Set Property ("MyMovieClip", _Alpha, newvar);
}
该功能可以用于动态地产生文本字段中的文本、动态地设置动作参数的值,以及跟踪事件已触发的次数。例如,网页浏览上的计数器就可以使用该功能完成。
|