在JavaScript中,常见的运算符有算数运算符、比较运算符和逻辑运算符。
算数运算符 | 说明 | 举例 | 结果 |
---|---|---|---|
= | 赋值运算符。将运算符右边变量的值赋给左边变量。 | x = 5 ; | - |
+ | 加号。将两个数据相加。 | y=1+2; | y=3 |
- | 减号。将两个数据相减。 | z = x-y; | z=2 |
* | 乘号。将两个数据相乘。 | a=x*y; | a=15 |
/ | 除号。将两个数据相除。 | b=x/z; | b=2.5 |
% | 求余运算。求两个数据相除的余数。 | c=x%z; | c=1 |
++ | 自加。将操作数加1。 | m=++x; | m=6 x=6 |
-- | 自减。将操作数减1。 | n=--x; | n=5 x=5 |
比较运算符 | 说明 | 举例 | 结果 |
== | 相等。若两数据相等,返回 true,否则返回 false。 | boolean1=(x==5); | boolean1=true |
!= | 不相等。若两数据不相等,返回 true,否则返回 false。 | boolean2=(x!=5); | boolean2=false; |
> | 大于。若左边数据大于右边数据,返回 true,否则返回 false。 | boolean4=(x>y); | boolean4=true |
< | 小于。若左边数据小于右边数据,则返回布尔值true,否则返回false。 | boolean5=(x<y); | boolean5=false |
>= | 大于等于。若左边数据大于或等于右边数据,返回 true,否则返回 false。 | boolean6=(x>=y); | boolean6=true |
<= | 小于等于。若左边数据小于或等于右边数据,返回 true,否则返回 false。 | boolean7=(x<=y); | boolean7=false |
逻辑运算符 | 说明 | 举例 | 结果 |
&& | 逻辑与。如果符号两边的操作数为真,返回true,否则返回false。 | boolean_a=true&&false; | boolean_a=false |
|| | 逻辑或。如果符号两边的操作数为假,返回false,否则返回true。 | boolean_b=true||false; | boolean_b=true |
! | 逻辑非。如果符号右边的操作数为真,返回false,否则返回true。 | boolean_c=!true; | boolean_c=false |
" + "号也可以用来连接字符串
“+”号不但可以将两个数据相加,还可以用来连接字符串。
例如:
1 var name=" Tom "; 2 var age=22; 3 var person="My name is "+name+" ! I'm "+age+" ! "; 4 alert(person);
保存并运行代码,显示 My name is Tom ! I'm 22 !
上面的例子中,有字符串,也有数值。当字符串和数值进行混合运算时,JavaScript 会自动判断“ + ”号的作用,是相加运算,还是连接字符串。如果是连接字符串,数值也将被转换为字符串。
对自加(++)和自减(--)的探讨
值得注意的是,自加(++)和自减(--)运算符放置在操作数的前面和后面含义不同。放在操作数前面(前自加 / 前自减),先对操作数进行加1(减1),再进行运算;放在操作数后面(后自加 / 后自减),先进行运算,再对操作数加1(减1)。
例如:
1 <script type="text/javascript"> 2 var x=5; 3 var y=++x; // 前自加,赋值后 x 的值为 6 4 var z=x++; // 后自加,赋值后 x 的值为 7 5 var m=--x // 前自减,赋值后 x 的值为 6 6 var n=x-- // 后自减,赋值后 x 的值为 5 7 </script> 8 <p onclick="alert(y);">显示 y 的值</p> 9 <p onclick="alert(z);">显示 z 的值</p> 10 <p onclick="alert(m);">显示m 的值</p> 11 <p onclick="alert(n);">显示 n 的值</p>
保存并运行代码,依次点击四段文本,都显示 6 。
分析:
- 对于 y ,x (x=5)加 1 后的值变为 6 ,再将 x 的值传递给 y 。
- 对于 z ,先将 x 的值(x=6)传递给 z ,再对 x 加 1 ,值变为 7。
- 对于 m ,x (x=7)减 1 后的值为 6,再将 x 的值传递给 m 。
- 对于 n ,先将 x 的值(x=6)传递给 n ,再对 x 减 1,值变为 5 。
算数运算符的缩写
为了操作方便,减少代码的书写,JavaScript 还支持常见数学运算符的缩写。
运算符 | 例子 | 等价于 |
---|---|---|
+= | 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 |