JavaScript 運算子和數學函數 | 梧所不學

JavaScript 運算子和數學函數 | 梧所不學

更新於 發佈於 閱讀時間約 8 分鐘

當你剛開始學習 JavaScript 時,運算子和數學函數是不可或缺的基礎。這些工具讓你能夠處理數字、執行計算,甚至在程式邏輯中做出判斷。本文將介紹 JavaScript 常見的運算子與數學函數。

JavaScript 運算子

算術運算子

算術運算子是用來進行數學計算的基本工具,以下是最常見的幾種:

  • + 加法:a + b
  • - 減法:a - b
  • * 乘法:a * b
  • / 除法:a / b
  • % 取餘數:a % b
  • ** 次方:a ** b
let a = 10, b = 3;

console.log("加法:", a + b);       // 13

console.log("減法:", a - b);       // 7

console.log("乘法:", a * b);       // 30

console.log("除法:", a / b);       // 3.3333...

console.log("取餘:", a % b);       // 1

console.log("次方:", a ** b);      // 1000

遞增與遞減運算子

這些運算子用於將變數的值加 1 或減 1:

  • ++:遞增運算子,將變數加 1。
  • --:遞減運算子,將變數減 1。

這些運算子可以放在變數前面(前置)或後面(後置),位置不同會影響運算結果。

let x = 5;

console.log("後置遞增前:", x++);   // 5

console.log("後置遞增後:", x);     // 6

console.log("前置遞增:", ++x);     // 7

console.log("前置遞減:", --x);     // 6

console.log("後置遞減前:", x--);   // 6

console.log("後置遞減後:", x);     // 5

指派運算子

指派運算子用來將值賦給變數。最基本的是 =,但也有結合算術的寫法:

  • =:直接賦值。
  • +=:加後再賦值。
  • -=:減後再賦值。
  • *=/=%= 也同理。
let y = 10;

y += 5;                           // y = y + 5
console.log("加法指派:", y);       // 15

y -= 3;                           // y = y - 3
console.log("減法指派:", y);       // 12

y *= 2;                           // y = y * 2
console.log("乘法指派:", y);       // 24

y /= 4;                           // y = y / 4
console.log("除法指派:", y);       // 6

y %= 4;                           // y = y % 4
console.log("取餘指派:", y);       // 2

比較運算子

比較運算子用來判斷兩個值的關係,結果會是布林值(truefalse):

  • ==:等於(不比較型別)。
  • ===:全等於(值與型別都相同)。
  • !=:不等於(不比較型別)。
  • !==:不全等於(值或型別不相同)。
  • >:大於。
  • <:小於。
  • >=:大於或等於。
  • <=:小於或等於。
console.log("等於:", 5 == "5");    // true (不比較型別)

console.log("全等於:", 5 === "5"); // false (值和型別都比較)

console.log("不等於:", 5 != "5");  // false (不比較型別)

console.log("不全等於:", 5 !== "5"); // true (型別不同)

console.log("大於:", 10 > 5);      // true

console.log("小於:", 5 < 10);      // true

console.log("大於等於:", 10 >= 10); // true

console.log("小於等於:", 5 <= 10);  // true

邏輯運算子

邏輯運算子用於多個條件的組合:

  • && (AND):兩個條件都為 true 時,結果才為 true
  • || (OR):至少一個條件為 true 時,結果就為 true
  • ! (NOT):將布林值反轉,truefalsefalsetrue
// 邏輯運算子
let p = true, q = false;

console.log("&&邏輯:", p && q); // false (兩者都為true才返回true)

console.log("||邏輯:", p || q); // true (至少一個為true就返回true)

console.log("!邏輯:", !p); // false (將布林值反轉)

數學函數

JavaScript 內建 Math 物件,提供許多常用的數學函數:

四捨五入與取整

  • Math.round(x):四捨五入。
  • Math.floor(x):無條件捨去(向下取整)。
  • Math.ceil(x):無條件進位(向上取整)。
console.log(Math.round(2.6)); // 3

console.log(Math.floor(2.6)); // 2

console.log(Math.ceil(2.6)); // 3

最大值與最小值

  • Math.max(a, b, ...):回傳最大值。
  • Math.min(a, b, ...):回傳最小值。
console.log(Math.max(1, 5, 10)); // 10

console.log(Math.min(1, 5, 10)); // 1

隨機數

Math.random() 可以產生 0(含)到 1(不含)之間的亂數:

console.log("隨機數(0-1):", Math.random());

若要產生 1 到 10 的整數:

console.log("隨機整數(1-10):", Math.floor(Math.random() * 10) + 1);

// 解釋:Math.random() * 10 產生 0-9.999...
// Math.floor 無條件捨去後得到 0-9
// +1 後得到 1-10

其他常用函數

  • Math.abs(x):絕對值。
  • Math.sqrt(x):平方根。
  • Math.pow(x, y):x 的 y 次方。
console.log(Math.abs(-5)); // 5

console.log(Math.sqrt(16)); // 4

console.log(Math.pow(2, 3)); // 8

結語

運算子和數學函數是 JavaScript 的基礎。掌握這些基本的運算子與數學函數就像是學會了程式語言的「加減乘除」。這些運算子和數學函數看似簡單,但組合起來卻能解決複雜的問題。

avatar-img
梧笙の領域展開
64會員
37內容數
「梧笙」即「吾生」,意即我的生命,朋友都叫我「阿梧(Awu)」,高雄人。我喜歡學習新技能,從程式設計到網路工具,再到社群經營和影片剪輯。日常興趣是打遊戲、看動漫、讀小說和聽音樂。我會把這些興趣寫成文章,如果你有任何想法或問題,歡迎來信到我的郵箱 aowulife109@gmail.com
留言
avatar-img
留言分享你的想法!
梧笙の領域展開 的其他內容
迴圈(Loop)是一個非常重要的基礎觀念。迴圈讓我們可以重複執行某段程式碼,直到達到我們設定的條件為止。本文將介紹 JavaScript 中常見的三種迴圈:for 迴圈、while 迴圈,以及 do...while 迴圈,讓你理解它們的使用方式與差異。
當我們學習 JavaScript 時,「條件判斷」是不可或缺的基礎概念。它讓程式能根據不同情況,執行不同的指令。本文將會介紹 if else 和 switch case 這兩種常見的條件判斷,並說明它們的結構與使用時機。
在學習 JavaScript 的過程中,字串(String)是一個非常基礎且重要的資料型別。無論是處理使用者輸入、API 回傳資料,還是顯示在畫面上的文字內容,字串都扮演著不可或缺的角色。本文將介紹 JavaScript 的字串與常用字串函數。
迴圈(Loop)是一個非常重要的基礎觀念。迴圈讓我們可以重複執行某段程式碼,直到達到我們設定的條件為止。本文將介紹 JavaScript 中常見的三種迴圈:for 迴圈、while 迴圈,以及 do...while 迴圈,讓你理解它們的使用方式與差異。
當我們學習 JavaScript 時,「條件判斷」是不可或缺的基礎概念。它讓程式能根據不同情況,執行不同的指令。本文將會介紹 if else 和 switch case 這兩種常見的條件判斷,並說明它們的結構與使用時機。
在學習 JavaScript 的過程中,字串(String)是一個非常基礎且重要的資料型別。無論是處理使用者輸入、API 回傳資料,還是顯示在畫面上的文字內容,字串都扮演著不可或缺的角色。本文將介紹 JavaScript 的字串與常用字串函數。