什麼是運算子

計算機

首先讓我們來觀察一下這個計算機,上面有加減乘除等按鈕,可以幫助計算機理解我們想要做些什麼,這就是運算子的功能,運算子是用來處理資料或變數的符號或關鍵字。

今天大家就當成是閱讀魔法書,來看看下面這些咒語以及咒語有哪些功能吧!!!

JavaScript有哪些運算子

賦值運算子
算數運算子
比較運算子
指數運算子
邏輯運算子

賦值運算子

賦值運算子其實之前我們介紹賦予變數的時候,就已經講過了,就是這個=!!
賦值運算子的功能是可以將值紀錄到變數內。

1
2
3

let a = 1;

但除了=之外,還有其他的幾個賦值運算子。

1
2
3
4
5
6
7
8
9

let a = 1;

a += 10; //a加10 並將結果賦值回a,此時1+10=11
a ++; // a加1 並將結果賦值回a,此時11+1=12
a -= 10; //a減10 並將結果賦值回a,此時12-10=2
a --;// a減1並將結果賦值回a,此時2-1=1

console.log(a);//得出1

我們來說明一下這些運算子:

  • += 的作用是將a變數加上後面的值之後再賦予回a。
  • ++ 的作用則是a變數+1之後賦予回a。
  • -+ 的作用是將a變數減掉後面的值再賦予回a。
  • -- 的作用是將a變數-1之後賦予回a。

算數運算子

算數運算子就是我們所熟悉的加減乘除+-*/

1
2
3
4
5
6
7
let a = 1;
let b = 2;

console.log( a + b ); //1+2 得出3
console.log( a - b ); //1-2 得出-1
console.log( a * b ); //1*2 得出2
console.log( a / b ); //1/2 得出0.5

除此之外,還有取餘數 %

1
2
3
4

let a = 7;

console.log( a % 2) // 7除以2之後剩下餘數1,得出1

比較運算子

比較運算子顧名思義用於比較兩者之間的差別,如果相同就返回true,如果不同就返回false。

  • > 大於
  • < 小於
  • >= 大於等於
  • <= 小於等於
  • == 等於,這邊要特別注意一下等於的符號是用兩個等號表示,因為一個等號為賦值運算子
  • != 不等於
1
2
3
4
5
6
7

console.log( 3 > 3) //得出false
console.log( 3 < 2) //得出false
console.log( 3 >= 3) //得出true
console.log( 2 <= 3 ) //得出true
console.log( 2 != 3) //得出true

嚴謹模式

我們剛剛提到的 ==!=,屬於寬鬆模式,舉個例子:

1
2
3

console.log( 1 == "1"); //回傳true

這邊會自動將變數做轉型,讓兩邊可以進行比對。

至於嚴謹模式,則是連型別都會列入比較的範圍裡,以===!==來表達。

1
2
3

console.log( 1 === "1") //回傳false

這邊將型別列入比較之後,數字型別的1,與字串型別的”1”,不能相等,所以回傳false。

指數運算子

這是一個可以計算指數的咒語。

1
2
3
4
5

let a = 2;

console.log( a ** 2 ) //計算 a 的平方,也就是 2 * 2 = 4
console.log( a ** 3 ) //計算 a 的3次方,也就是 2 * 2 * 2 = 8

邏輯運算子

  • And &&
  • Or ||

這兩個運算子主要用於了解兩邊的條件,And && 的兩邊都必須要是true,才會返回true,Or ||的兩邊只要有一個是true,就會返回true。

1
2
3
4
5
6

console.log( 1 < 2 && 3 > 2); // 1<2 為true,3>2也為true,所以最後結果為true
console.log( 1 < 2 && 3 < 2); // 1<2 為true,3<2 為false,所以最後結果為false
console.log( 1 < 2 || 3 < 2 );// 1<2 為true,3<2 為false,但因為這邊使用Or,因此只要有一邊為true,就會返回true,最後結果為true