2013/1/3 13:12:09 小编:胡金金个人网站
下表按优先级递减的顺序列出了 ActionScript 3.0 中的运算符。该表内同一行中的运算符具有相同的优先级。在该表中,每行运算符都比位于其下方的运算符的优先级高。
|
组 |
运算符 |
|---|---|
|
主要 |
[] {x:y} () f(x) new x.y x[y] <></> @ :: .. |
|
后缀 |
x++ x-- |
|
一元 |
++x --x + - ~ ! delete typeof void |
|
乘法 |
* / % |
|
加法 |
+ - |
|
按位移位 |
<< >> >>> |
|
关系 |
< > <= >= as in instanceof is |
|
等于 |
== != === !== |
|
按位"与" |
& |
|
按位"异或" |
^ |
|
按位"或" |
| |
|
逻辑"与" |
&& |
|
逻辑"或" |
|| |
|
条件 |
?: |
|
赋值 |
= *= /= %= += -= <<= >>= >>>= &= ^= |= |
|
逗号 |
, |
主要运算符包括那些用来创建 Array 和 Object 字面值、对表达式进行分组、调用函数、实例化类实例以及访问属性的运算符。
下表列出了所有主要运算符,它们具有相同的优先级。属于 E4X 规范的运算符用 (E4X) 来表示。
|
运算符 |
执行的运算 |
|---|---|
| [] |
初始化数组 |
| {x:y} |
初始化对象 |
| () |
对表达式进行分组 |
| f(x) |
调用函数 |
| new |
调用构造函数 |
| x.y x[y] |
访问属性 |
| <></> |
初始化 XMLList 对象 (E4X) |
| @ |
访问属性 (E4X) |
| :: |
限定名称 (E4X) |
| .. |
访问子级 XML 元素 (E4X) |
下表列出了所有的一元运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| ++ |
递增(前缀) |
| -- |
递减(前缀) |
| + |
一元 + |
| - |
一元 -(非) |
| ! |
逻辑"非" |
| ~ |
按位"非" |
| delete |
删除属性 |
| typeof |
返回类型信息 |
| void |
返回 undefined 值 |
乘法运算符具有两个操作数,它执行乘、除或求模计算。
下表列出了所有的乘法运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| * |
乘法 |
| / |
除法 |
| % |
求模 |
加法运算符有两个操作数,它执行加法或减法计算。下表列出了所有加法运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| + |
加法 |
| - |
减法 |
按位移位运算符有两个操作数,它将第一个操作数的各位按第二个操作数指定的长度移位。下表列出了所有按位移位运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| << |
按位向左移位 |
| >> |
按位向右移位 |
| >>> |
按位无符号向右移位 |
关系运算符有两个操作数,它比较两个操作数的值,然后返回一个布尔值。下表列出了所有关系运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| < |
小于 |
| > |
大于 |
| <= |
小于或等于 |
| >= |
大于或等于 |
| as |
检查数据类型 |
| in |
检查对象属性 |
| instanceof |
检查原型链 |
| is |
检查数据类型 |
等于运算符有两个操作数,它比较两个操作数的值,然后返回一个布尔值。下表列出了所有等于运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| == |
等于 |
| != |
不等于 |
| === |
严格等于 |
| !== |
严格不等于 |
按位逻辑运算符有两个操作数,它执行位级别的逻辑运算。按位逻辑运算符具有不同的优先级;下表按优先级递减的顺序列出了按位逻辑运算符:
|
运算符 |
执行的运算 |
|---|---|
| & |
按位"与" |
| ^ |
按位"异或" |
| | |
按位"或" |
逻辑运算符有两个操作数,它返回布尔结果。逻辑运算符具有不同的优先级;下表按优先级递减的顺序列出了逻辑运算符:
|
运算符 |
执行的运算 |
|---|---|
| && |
逻辑"与" |
| || |
逻辑"或" |
条件运算符是一个三元运算符,也就是说它有三个操作数。条件运算符是应用 if..else 条件语句的一种简便方法。
|
运算符 |
执行的运算 |
|---|---|
| ?: |
条件 |
赋值运算符有两个操作数,它根据一个操作数的值对另一个操作数进行赋值。下表列出了所有赋值运算符,它们具有相同的优先级:
|
运算符 |
执行的运算 |
|---|---|
| = |
赋值 |
| *= |
乘法赋值 |
| /= |
除法赋值 |
| %= |
求模赋值 |
| += |
加法赋值 |
| -= |
减法赋值 |
| <<= |
按位向左移位赋值 |
| >>= |
按位向右移位赋值 |
| >>>= |
按位无符号向右移位赋值 |
| &= |
按位"与"赋值 |
| ^= |
按位"异或"赋值 |
| |= |
按位"或"赋值 |