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