JavaScript 运算符

在本教程中,你将学习如何使用 JavaScript 中的运算符对变量和值进行操作或执行操作。

什么是 JavaScript 中的运算符

运算符是告诉 JavaScript 引擎执行某种操作的符号或关键字。例如,加法(+)符号是一个操作符,它告诉 JavaScript 引擎将两个变量或值相加,而等于(==),大于(>)或小于(<)的符号是告诉 JavaScript 引擎的运算符来比较两个变量或值,依此类推。

以下部分描述了 JavaScript 中使用的不同运算符。

JavaScript 算术运算符

算术运算符用于执行常见的算术运算,例如加法、减法、乘法等。以下是 JavaScript 算术运算符的完整列表:

运算符 描述 结果
+ 加法 $x + $y $x$y 的总和
- 减法 $x - $y $x$y 的差。
* 乘法 $x * $y $x$y 的乘积。
/ 除法 $x / $y $x$y 的商数
% 取余 $x % $y $x 除以 $y 的的余数

以下示例将向你展示这些算术运算符:

var x = 10;
var y = 4;
alert(x + y); // 0utputs: 14
alert(x - y); // 0utputs: 6
alert(x * y); // 0utputs: 40
alert(x / y); // 0utputs: 2.5
alert(x % y); // 0utputs: 2

JavaScript 赋值运算符

赋值运算符用于为变量赋值。

运算符 描述 是相同的
= 赋值 x = y x = y
+= 相加并赋值 x += $ x = x + y
-= 减去并赋值 x -= y x = x - y
*= 乘以并赋值 x *= y x = x * y
/= 除以并将商赋值 x /= y x = x / y
%= 除以并将余数赋值 x %= y x = x % y

以下示例将向你展示这些赋值运算符:

var x;    // Declaring Variable
 
x = 10;
alert(x); // Outputs: 10
 
x = 20;
x += 30;
alert(x); // Outputs: 50
 
x = 50;
x -= 20;
alert(x); // Outputs: 30
 
x = 5;
x *= 25;
alert(x); // Outputs: 125
 
x = 50;
x /= 10;
alert(x); // Outputs: 5
 
x = 100;
x %= 15;
alert(x); // Outputs: 10

JavaScript 字符串运算符

有两个运算符也可以用于字符串。

运算符 描述 结果
+ 级联 str1 + str2 str1 和 str2 的串联
+= 连接分配 str1 += str2 将 str2 追加到 str1

以下示例将向你展示这些字符串运算符:

var str1 = "Hello";
var str2 = " World!";
 
alert(str1 + str2); // Outputs: Hello World!
 
str1 += str2;
alert(str1); // Outputs: Hello World!

JavaScript 递增和递减运算符

递增/递减运算符用于递增/递减变量的值。

运算符 名称 影响
++x 预增 将 x 递增 1,然后返回 x
x++ 后递增 返回 x,然后将 x 递增 1
--x 预减 将 x 递减 1,然后返回 x
x-- 后减 返回 x,然后将 x 递减 1

以下示例将向你展示增量和减量运算符的实际工作方式:

var x; // Declaring Variable
 
x = 10;
alert(++x); // Outputs: 11
alert(x);   // Outputs: 11
 
x = 10;
alert(x++); // Outputs: 10
alert(x);   // Outputs: 11
 
x = 10;
alert(--x); // Outputs: 9
alert(x);   // Outputs: 9
 
x = 10;
alert(x--); // Outputs: 10
alert(x);   // Outputs: 9

JavaScript 逻辑运算符

逻辑运算符通常用于组合条件语句。

运算符 名称 结果
&& 逻辑与 x && y 如果 x 和 y 都为真,则为真
` ` 逻辑或
! 逻辑非 !x 如果 x 不为真,则为真

以下示例将向你展示这些逻辑运算符的实际工作方式:

var year = 2018;
 
// Leap years are divisible by 400 or by 4 but not 100
if((year % 400 == 0) || ((year % 100 != 0) && (year % 4 == 0))){
    alert(year + " is a leap year.");
} else{
    alert(year + " is not a leap year.");
}

你将在 JavaScript if / else 章节中了解条件语句。

JavaScript 比较运算符

比较运算符用于以布尔方式比较两个值。

运算符 名称 结果
== 等于 x == y 如果 x 等于 y,则为真
=== 相同 x === y 如果 x 等于 y,则为真,并且它们的类型相同
!= 不相等 x != y 如果 x 不等于 y,则为真
!== 不一样 x !== y 如果 x 不等于 y,或者它们的类型不同,则为真
< 少于 x < y 如果 x 小于 y,则为真
> 大于 x > y 如果 x 大于 y,则为真
>= 大于或等于 x >= y 如果 x 大于或等于 y,则为真
<= 小于或等于 x <= y 如果 x 小于或等于 y,则为真

以下示例将向你展示这些比较运算符:

var x = 25;
var y = 35;
var z = "25";
 
alert(x == z);  // Outputs: true
alert(x === z); // Outputs: false
alert(x != y);  // Outputs: true
alert(x !== z); // Outputs: true
alert(x < y);   // Outputs: true
alert(x > y);   // Outputs: false
alert(x <= y);  // Outputs: true
alert(x >= y);  // Outputs: false