运算符ActionScript 30 语言和组件参考.docx
《运算符ActionScript 30 语言和组件参考.docx》由会员分享,可在线阅读,更多相关《运算符ActionScript 30 语言和组件参考.docx(139页珍藏版)》请在冰豆网上搜索。
运算符ActionScript30语言和组件参考
ActionScript3.0语言和组件参考
窗体顶端
窗体底端
窗体顶端
窗体底端
| 全部包 | 全部类 | 语言元素 |索引
| 附录 | 约定约定 | 框架无框架
运算符
符号运算符是指定如何组合、比较或修改表达式的值的字符。
算术
+
addition
加上数值表达式。
--
decrement
操作数减去1。
/
division
用expression2除expression1。
++
increment
将表达式加1。
%
modulo
计算expression1除以expression2所得的余数。
*
multiplication
将两个数值表达式相乘。
-
subtraction
用于求反或减法运算。
算术组合赋值
+=
additionassignment
将expression1||expression2的值赋予expression1。
/=
divisionassignment
将expression1/expression2的值赋予expression1。
%=
moduloassignment
将expression1||expression2的值赋予expression1。
*=
multiplicationassignment
将expression1*expression2的值赋予expression1。
-=
subtractionassignment
将expression1||expression2的值赋予expression1。
赋值
=
assignment
将expression2(右侧操作数)的值赋予expression1中的变量、数组元素或属性。
按位
&
bitwiseAND
将expression1和expression2转换为32位无符号整数,然后对整数参数的每一位执行布尔AND运算。
<<
bitwiseleftshift
将expression1和shiftCount转换为32位整数,并将expression1中的所有位向左移动指定的位数,该数字由shiftCount转换所得的整数指定。
~
bitwiseNOT
将expression转换为32位有符号整数,然后按位应用1的补码。
|
bitwiseOR
将expression1和expression2转换为32位无符号整数,并在expression1或expression2的对应位为1的每个位的位置上放置1。
>>
bitwiserightshift
将expression和shiftCount转换为32位整数,并将expression中的所有位向右移动一定的位数,该数目由shiftCount转换得到的整数指定。
>>>
bitwiseunsignedrightshift
该运算符与按位右移(>>)运算符基本相同,但不保留原始表达式的符号,因为左侧的位始终用0填充。
^
bitwiseXOR
将expression1和expression2转换成32位无符号整数,并在expression1或expression2中对应位为1(但并非在二者中都为1)的每个位的位置处放置1。
按位组合赋值
&=
bitwiseANDassignment
将expression1&expression2的值赋予expression1。
<<=
bitwiseleftshiftandassignment
执行按位左移(<<=)运算并将内容作为结果存储在expression1中。
|=
bitwiseORassignment
将expression1|expression2的值赋予expression1。
>>=
bitwiserightshiftandassignment
执行按位右移运算并将结果存储到expression中。
>>>=
bitwiseunsignedrightshiftandassignment
执行无符号按位右移运算并将结果存储到expression中。
^=
bitwiseXORassignment
将expression1||expression2的值赋予expression1。
注释
/*..*/
blockcommentdelimiter
分隔一行或多行脚本注释。
//
linecommentdelimiter
指示脚本注释的开始。
比较
==
equality
测试两个表达式是否相等。
>
greaterthan
比较两个表达式并确定expression1是否大于expression2;如果是,则结果为true。
>=
greaterthanorequalto
比较两个表达式并确定expression1是大于或等于expression2(true),还是expression1小于expression2(false)。
!
=
inequality
测试目的与等于(==)运算符正好相反。
<
lessthan
比较两个表达式并确定expression1是否小于expression2;如果是,则结果为true。
<=
lessthanorequalto
比较两个表达式并确定expression1是否小于或等于expression2;如果是,则结果为true。
===
strictequality
测试两个表达式是否相等,但是不执行自动数据转换。
!
==
strictinequality
测试目的与全等(===)运算符正好相反。
逻辑
&&
logicalAND
如果expression1为false或可以转换为false,则返回该表达式;否则,返回expression2。
&&=
logicalANDassignment
将expression1||expression2的值赋予expression1。
!
logicalNOT
对变量或表达式的布尔值取反。
||
logicalOR
如果expression1为true或可以转换为true,则返回该表达式;否则,返回expression2。
||=
logicalORassignment
将expression1||expression2的值赋予expression1。
其它
[]
arrayaccess
初始化新数组或具用指定元素(a0等等)的多维数组,或者访问数组中的元素。
as
计算第一个操作数指定的表达式是否是第二个操作数指定的数据类型的成员。
comma
计算expression1,然后计算expression2,依此类推。
?
:
conditional
计算expression1,如果expression1的值为true,则结果是expression2的值;否则,结果是expression3的值。
delete
销毁由reference指定的对象属性;如果运算完成后属性不存在,则结果为true;否则,为false。
.
dot
访问类变量和方法、获得并设置对象属性以及分隔导入的包或类。
in
计算属性是否是特定对象的一部分。
instanceof
计算表达式的原型链中是否包含function的原型对象。
is
计算对象是否与特定的数据类型、类或接口兼容。
:
:
namequalifier
指定属性、方法、XML属性或XML特性的命名空间。
new
实例化类实例。
{}
objectinitializer
创建一个新的对象并使用指定的name和value属性对其进行初始化。
()
parentheses
对一个或多个参数执行组合运算,对表达式执行顺序计算,或者将一个或多个参数括起来,然后将它们作为参数传递给括号前面的函数。
/
RegExpdelimiter
在字符前后使用时,表示字符具有文本值并被视作正则表达式(RegExp),而不是变量、字符串或其它ActionScript元素。
:
type
用于指定数据类型;此运算符指定变量类型、函数返回类型或函数参数类型。
typeof
计算expression,并返回指定表达式的数据类型的字符串。
void
计算表达式然后舍弃其值,返回undefined。
字符串
+
concatenation
连接(合并)字符串。
+=
concatenationassignment
将expression1||expression2的值赋予expression1。
"
stringdelimiter
用于字符前后时,表示该字符具有文本值且被视作字符串,而不是变量、数值或其它ActionScript元素。
XML
@
attributeidentifier
标识XML或XMLList对象的属性。
{}
braces(XML)
计算在XML或XMLList初始值设定项中使用的表达式。
[]
brackets(XML)
访问XML或XMLList对象的属性或特性。
+
concatenation(XMLList)
将XML或XMLList值连接(合并)到XMLList对象。
+=
concatenationassignment(XMLList)
将expression1+expression2的值赋予XMLList对象expression1。
delete(XML)
删除由reference指定的XML元素或属性。
..
descendantaccessor
定位到XML或XMLList对象的后代元素,或者(与@运算符一起使用)查找匹配的后代属性。
.
dot(XML)
定位到XML或XMLList对象的子元素,或者(与@运算符一起使用)返回XML或XMLList对象的属性。
()
parentheses(XML)
计算E4XXML构造中的表达式。
<>
XMLliteraltagdelimiter
在XML文本中定义XML标签。
运算符详细信息
+ addition
运算符
用法
expression1+expression2
语言版本:
ActionScript3.0
RuntimeVersions:
FlashPlayer9
加上数值表达式。
如果两个表达式均为整数,则和为整数;如果有一个或两个表达式为浮点数,则和为浮点数。
如果其中一个表达式是字符串,则所有其它表达式都将转换为字符串,然后连接起来(而不是求和)。
否则,如果表达式不是数字,Flash®Player会将其转换为数字。
操作数
expression1:
Number—要加上的值。
expression2:
Number—要加上的值。
结果
Number—一个整数或浮点数。
示例
如何使用示例
下面的语句将整数2和3相加:
trace(2+3);//5
下面的语句将浮点数2.5与3.25相加:
trace(2.5+3.25);//5.75
以下示例说明,如果其中一个表达式为字符串,则所有其它表达式都将被转换为字符串并连接起来:
trace("Number"+8+0);//Number80
与动态文本字段和输入文本字段相关联的变量的数据类型是String。
在以下示例中,变量deposit是舞台上的一个输入文本字段。
用户输入存款数目后,该脚本会尝试将deposit添加到oldBalance。
然而,由于deposit为String类型,所以脚本会连接(合并成一个字符串)变量的值,而不是对它们求和。
varoldBalance:
Number=1345.23;
varcurrentBalance=deposit_txt.text+oldBalance;
trace(currentBalance);
例如,如果用户在存款文本字段中输入475,则trace()语句会将值4751345.23发送到“输出”面板。
若要更正这一点,请使用Number()函数将字符串转换为数字,如下所示:
varoldBalance:
Number=1345.23;
varcurrentBalance:
Number=Number(deposit_txt.text)+oldBalance;
trace(currentBalance);
另请参见
+(concatenation)
Operators
Concatenatingstrings
+= additionassignment
运算符
用法
expression1+=expression2
语言版本:
ActionScript3.0
RuntimeVersions:
FlashPlayer9
将expression1||expression2的值赋予expression1。
例如,下面两个语句的结果是相同的:
x+=y;
x=x+y;
加法(+)运算符的所有规则都适用于加法赋值(+=)运算符。
操作数
expression1:
Number—一个数字。
expression2:
Number—一个数字。
结果
Number—加法运算的结果。
示例
如何使用示例
以下示例说明了加法赋值(+=)运算符的数值用法:
varx:
Number=5;
vary:
Number=10;
x+=y;
trace(x);//15
另请参见
+(addition)
[] arrayaccess
运算符
用法
myArray=[a0,a1,...aN]
myArray[i]=value
myObject[propertyName]
RuntimeVersions:
FlashPlayer9
初始化新数组或具用指定元素(a0等等)的多维数组,或者访问数组中的元素。
借助数组访问运算符,您可以动态设置和检索实例、变量以及对象名称,还可以访问对象属性。
用法1:
数组是一种对象,其属性称为元素,这些元素由称为索引的数字逐一进行标识。
创建数组时,需要用数组访问([])运算符(或方括号)将元素括起来。
数组中可以包含各种类型的元素。
例如,以下名为employee的数组中就包含了三个元素;第一个元素是一个数字,后两个元素是字符串(位于引号内):
varemployee:
Array=[15,"Barbara","Jay"];
可通过嵌套方括号来模拟多维数组。
您最多可以嵌套深度为256层的数组。
下面的代码将创建一个包含三个元素的名为ticTacToe的数组;其中的每个元素也都是包含了三个元素的数组:
varticTacToe:
Array=[[1,2,3],[4,5,6],[7,8,9]];
/*SelectDebug>ListVariablesintestmode
toseealistofthearrayelements.*/
用法2:
将每个元素的索引使用方括号([])括起来可以直接访问该元素;您可以向数组中添加新元素,也可以更改或检索现有元素的值。
数组中的第一个索引始终为0,如以下示例所示:
varmy_array:
Array=newArray();
my_array[0]=15;
my_array[1]="Hello";
my_array[2]=true;
可以使用方括号添加第四个元素,如以下示例所示:
my_array[3]="George";
可以使用方括号访问多维数组中的元素。
第一组方括号用于标识原始数组中的元素,而第二组方括号用于标识嵌套数组中的元素。
以下trace()语句用于查找第二个数组(索引1)的第三个元素(索引2)。
varticTacToe:
Array=[[1,2,3],[4,5,6],[7,8,9]];
trace(ticTacToe[1][2]);//6
用法3:
可以使用数组访问运算符来动态设置和检索对象属性的值:
varobj:
Object=newObject();
obj.prop1="foo";
trace(obj["prop"+1]);//foo
obj.prop2="bar";
for(jinobj){
trace(obj[j]);
}
/*Outputofforloop:
foo
bar*/
操作数
myArray:
Object—数组的名称。
a0,a1,...aN:
Object—数组中的元素;任何本机类型或对象实例,包括嵌套的数组。
i:
Number—大于等于0的整数索引。
myObject:
Object—对象的名称。
propertyName:
String—用于命名对象的属性的字符串。
结果
Object—
用法1:
对数组的引用。
用法2:
数组中的一个值;可以是本机类型或对象实例(包括Array实例)。
用法3:
对象的一个属性;可以是本机类型或对象实例(包括Array实例)。
示例
如何使用示例
以下示例显示了创建新的空Array对象的两种方法;第一行使用方括号:
varmy_array:
Array=[];
varmy_array:
Array=newArray();
以下示例创建一个包含三个元素的名为employee_array的数组,并更改数组中的第三个元素。
varemployee_array=["Barbara","George","Mary"];
trace(employee_array);//Barbara,George,Mary
employee_array[2]="Sam";
trace(employee_array);//Barbara,George,Sam
在以下示例中,计算方括号中的表达式,将计算结果作为要从obj对象中检索的变量的名称:
varobj:
Object=newObject();
obj.prop1="foo";
obj.prop2="bar";
for(vari:
int=1;i<3;i++){
trace(obj["prop"+i]);
}
/*Outputofforloop:
foo
bar*/
另请参见
Arrayclass
Objectclass
Operators
as
运算符
用法
expressionasdatatype
语言版本:
ActionScript3.0
RuntimeVersions:
FlashPlayer9
计算第一个操作数指定的表达式是否是第二个操作数指定的数据类型的成员。
如果第一个操作数是该数据类型的成员,则结果是第一个操作数。
否则,结果是null值。
对第二个操作数使用的表达式的计算结果必须是数据类型。
操作数
expression:
*—要针对指定的数据类型进行检查的值。
datatype:
Class—用于计算expression操作数的数据类型。
不能使用特殊的*类型(它意味着无类型)。
结果
Object—如果expression是在datatype中指定的数据类型的成员,则结果为expression。
否则,结果是null值。
示例
如何使用示例
以下示例创建名为myArray的简单数组,并将as运算符与各种数据类型一起使用。
publicvarmyArray:
Array=["one","two","three"];
trace(myArrayasArray);//one,two,three
trace(myArrayasNumber);//null
trace(myArrayasint);//null
另请参见
instanceof
is
= assignment
运算符
用法
expression1=expression2
语言版本:
ActionScript3.0
RuntimeVersions:
FlashPlayer9
将expression2(右侧操作数)的值赋予expression1中的变量、数组元素或属性。
可以按值赋值,也可以按引用赋值。
如果按值赋值,则会复制expression2的实际值并将其存储到expression1中。
当expression2是原始值时(也就是说其数据类型是Boolean、Number、int、uint或String),使用按值赋值。
按引用赋值会将对expression2的引用存储到expression1中。
按引用赋值通常与new运算符一起使用。
new运算符会在内存中创建一个对象,并将对内存中该位置的引用赋予某一变