- ·上一篇文章:使用操作符处理表达式中的值(2)
- ·下一篇文章:关于数据类型
使用操作符处理表达式中的值(1)
使用操作符处理表达式中的值
表达式是指Flash可以计算并能返回一个值的任何语句。你可以通过把操作符和值结合在一起或通过函数调用来建立表达式。当你在正常模式的动作面板中书写一个表达式时,请确保参数面板中的表达式(Expression)复选框被选中。否则,在该域输入的数据将按字符串常数而不是表达式处理。
选中创建表达式的输入域旁边的Expression复选框
操作符是指定怎样组合、比较或改变表达式的值的字符。操作符操作的元素称为操作数。例如,在下面的语句中,+操作符把数值常量和变量foo的值加起来,foo 和 3 是操作数。
foo + 3
本讲说明常用操作符的一般规则。要了解这里提到的每个操作符的详细信息,以及没有列入这些类型的操作符的信息,请参阅Flash 5的ActionScript词典。
一、操作符优先级
当在同一语句中使用了两个或多个操作符时,一些操作符比其它一些操作符优先。ActionScript按照准确的等级来决定哪一个操作符优先执行。例如,乘法总是在加法前先执行,但括号内的项却比乘法优先。因此,在没有括号时,ActionScript首先执行乘法,如下例所示:
total = 2 + 4 * 3;
结果是14。
但是,当有括号括住加法时,ActionScript先执行加法:
total = (2 + 4) * 3;
结果是18。
二、操作符结合规则
当两个或多个操作符优先级相同时,它们的结合规则决定它们被执行的顺序。结合规则可以是从左到右或从右到左。 例如,乘法操作符的结合规则是从左到右。因此,下面的两个语句是等价的:
total = 2 * 3 * 4;
total = (2 * 3) * 4;
三、数值操作符
数值操作符执行加、减、乘、除和其它算术运算。括号和负号(-)也属于算术操作符。下表列出了ActionScript的数值操作符:
操作符 执行的运算 + 加法 * 乘法 / 除法 % 取模 - 减法 ++ 递增 -- 递减
四、比较操作符
比较操作符比较表达式的值,返回逻辑值真或假(true 或 false) 。这些操作符常常用在循环和条件语句之中。在下面的例子中,如果变量 score 的值是100,winner.swf动画被载入;否则,另一个动画被载入:
if (score == 100){
loadMovie("winner.swf", 5);
} else {
loadMovie("loser.swf", 5);
}
下表列出了ActionScript的比较操作符:
操作符 执行的操作 $#@60; 小于 $#@62; 大于 $#@60;= 小于等于 $#@62;= 大于等于
五、字符串操作符
+操作符对字符串操作时,其作用是连接两个字符串操作数。例如,下面的语句把两个字符串相加: "Congratulations," to "Donna!":
"Congratulations, " + "Donna!"
结果是"Congratulations, Donna!"。如果+操作符的操作数仅有一个是字符串,Flash把另一个操作数转换为字符串。
比较操作符$#@62;、$#@62;=、$#@60;和$#@60;=用于操作字符串时也有特? 作用。这些操作符比较两个字符串,确定哪一个字符串按字母顺序排列时排在前面。如果两个操作数都是字符串时,这些比较操作符比较这两个字符串。如果仅有一个操作数是字符串,ActionScript把两个操作数转换为数值,然后执行数值比较。
注:Flash 5的ActionScript的数据类型允许同一操作符用于不同的数据类型。因此,再也不需要使用Flash 4的字符串操作符(例如eq、 ge和lt等), 除非需要导出Flash 4动画。
六、逻辑操作符
逻辑操作符比较两个逻辑值(true 和 false),返回结果也是逻辑值。例如,如果两个操作数的计算结果是 true,则逻辑与运算符(&&)返回true。 如果一个或两个操作数的运算结果是true,逻辑或操作符(||)返回false。 逻辑操作符常常与比较操作符一起使用,以确定一个 if 动作的条件。 例如,在下面的脚本中,如果两个表达式为true,if 动作将被执行。
if ((i $#@62; 10) && (_framesloaded $#@62; 50)){
play();
}
下表列出了ActionScript的逻辑操作符:
操作符 执行的操作 && 逻辑与 || 逻辑或 ! 逻辑非
赞助商链接
频道栏目导航
本类热门阅览





