赋值操作符
赋值操作符会根据其右操作数侧的值给左操作数赋值。
最基本的赋值操作数是等号(=),它会将右操作数的值直接赋给左操作数。也就是说,x = y 将把 y 的值赋给 x。其它的赋值操作符都是标准操作的缩略形式,列在表 2.2 中。
表 2.2 赋值操作符
| 缩写操作符 |
含义 |
| x += y |
x = x + y |
| x -= y |
x = x - y |
| x *= y |
x = x * y |
| x /= y |
x = x / y |
| x %= y |
x = x % y |
| x <<= y |
x = x << y |
| x >>= y |
x = x >> y |
| x >>>= y |
x = x >>> y |
| x &= y |
x = x & y |
| x ^= y |
x = x ^ y |
| x |= y |
x = x | y |
比较操作符
所谓比较操作符,就是会比较其两边的操作数,并根据比较结果为真或假返回逻辑值。操作数可以是数值或字符串值。如果使用字符串值的话,比较是基于标准的字典顺序。
相关内容列在了表 2.3 中。对于该表中的示例,我们假定 var1 被赋予了值 3,而 var2 被赋予了值 4。
表 2.3 比较操作符
| 操作符 |
描述 |
返回真的例子 |
| 相等(==) |
如果操作数相等的话则返回真。 |
3 == var1 |
| 不等(!=) |
如果操作数不等的话则返回真。 |
var1 != 4 |
| 大于(>) |
如果左操作数大于右操作数的话则返回真。 |
var2 > var1 |
| 大于或等于(>=) |
如果左操作数大于等于右操作数的话则返回真。 |
var2 >= var1 var1 >= 3 |
| 小于(<) |
如果左操作数小于右操作数的话则返回真。 |
var1 < var2 |
| 小于或等于(<=) |
如果左操作数小于等于右操作数的话则返回真。 |
var1 <= var2 var2 <= 5 |
算术操作符
将给定数值(常量或变量)进行给定的计算,并返回一个数值。标准的算术操作符是加(+)、减(-)、乘(*)、除(/)四则运算。这些操作符与在其它编程语言中的作用一样。
% (取余)
取余操作符用法如下:
var1 % var2
取余运算符将返回第一个操作数除以第二个操作数的余数。对于上面的例子来说,将返回 var1 变量除以 var2 变量的余数。更具体的例子是,12 % 5 将返回 2。
++ (自增)
自增操作符用法如下:
var++ 或 ++var
该自增操作符将自增操作数(自己加上 1)并返回一个值。如果写在变量后面(如 x++),将返回自增前的值。如果写在变量前面(如 ++x),将返回自增后的值。
例如,如果 x 是 3,那么语句 y = x++ 将先把 y 置为 3 再将 x 自增为 4。相反,语句 y = ++x 将先将 x 自增为 4,再将 y 置为 4。
-- (自减)
自减操作符用法如下:
var-- 或 --var
该自增操作符将自减操作数(自己减去 1)并返回一个值。如果写在变量后面(如 x--),将返回自减前的值。如果写在变量前面(如 --x),将返回自减后的值。
例如,如果 x 是 3,那么语句 y = x-- 将先把 y 置为 3 再将 x 自减为 2。相反,语句 y = --x 将先将 x 自减为 2,再将 y 置为 2。
- (求相反数)
求相反数操作数将取得操作数的相反数。例如,y = -x 将把 x 相反数的值赋给 y;也就是说,如果 x 是 3 的话,y 就会获得 -3 而 x 还是 3。
位操作符
执行位操作时,操作符会将操作数看作一串二进制位(1和0),而不是十进制、十六进制或八进制数字。例如,十进制的 9 就是二进制的 1001。位操作符在执行的时候会以二进制形式进行操作,但返回的值仍是标准的 JavaScript 数值。
表 2.4 JavaScript 位操作符总览
表 2.4 位操作符
| 操作符 |
用法 |
描述 |
| 按位与 |
a & b |
如果两个操作数对应位都是 1 的话则在该位返回 1。 |
| 按位或 |
a | b |
如果两个操作数对应位都是 0 的话则在该位返回 0。 |
| 按位异或 |
a ^ b |
如果两个操作数对应位只有一个 1 的话则在该位返回 1。 |
| 求反 |
~ a |
反转操作数的每一位。 |
| 左移 |
a << b |
将 a 的二进制形式左移 b 位。右面的空位补零。 |
| 算术右移 |
a >> b |
将 a 的二进制形式右移 b 位。忽略被移出的位。 |
| 逻辑右移 |
a >>> b |
将 a 的二进制形式右移 b 位。忽略被移出的位,左侧补入 0。 |
位逻辑操作符
- 将操作数转换为 32 位的整型数值并用二进制表示。
- 第一操作数的每一位与第二操作数的对应位配对:第一位对第一位,第二位对第二位,以此类推。
- 对每一对位应用操作符,最终结果按位组合起来。
例如,9 的二进制表示为 1001,15 的二进制表示为 1111。所以如果对这两个数应用位逻辑操作符,结果应该像下面这样:
- 15 & 9 结果为 9 (1111 & 1001 = 1001)
- 15 | 9 为 15 (1111 | 1001 = 1111)
- 15 ^ 9 为 6 (1111 ^ 1001 = 0110)
移位操作符
移位操作符将把两个操作符转换为 32 位整型数值,并返回与左操作数类型相同的结果。
<< (左移)
该操作符将把第一个操作数向左移若干位。移出的位将被忽略。右侧空位补零。
例如,9<<2 结果为 36,因为 1001 向左移两位变成 100100,这是 36。
>> (算术右移)
该操作符将把第一个操作数享有移若干位。移出的位将被忽略。左侧的空位补上与原来最左面位相同的值。
例如,9>>2 结果为 2,因为 1001 右移两位变成 10,这是 2。反之,-9>>2 结果为 -3,因为要考虑到符号位。
>>> (逻辑右移)
该操作符将把第一个操作数享有移若干位。移出的位将被忽略。左侧的空位补零。
例如,19>>>2 结果为 4,因为 10011 右移两位变成 100,这是 4。对于非负数,算术右移和逻辑右移结果相同。
逻辑操作符
逻辑操作符用 Boolean 值(布尔逻辑值)作为操作数,并返回 Boolean 值。
表 2.5 描述的很清楚。
更多的Javascript操作符应用详细讲解请到论坛查看: http://BBS.TC711.COM
【 双击滚屏 】 【 评论 】 【 收藏 】 【 打印 】 【 关闭 】
来源:
互联网
日期:2008-12-26