CodeGym /Adesua ahorow /Frontend SELF TW /數字和它們的操作

數字和它們的操作

Frontend SELF TW
等級 33 , 課堂 2
開放

3.1 類型 Number

在 JavaScript 中,數字在處理數據和執行計算時扮演重要角色。這個語言提供了許多處理數字的可能性,包括多種操作類型和內建方法。

在 JavaScript 中只有一種類型來表示數字—Number。這個類型可以表示整數和浮點數。此外,從2020年開始,引入了一種名為 BigInt 的類型,用於處理非常大的整數。

範例:

JavaScript
    
      let integer = 42;           // 整數
      let float = 3.14;           // 浮點數
      let bigInt = 12345678901234567890n; // 大整數
    
  

數字的操作

算術操作:

操作 語法 描述 範例 結果
a + b 加兩個數字 5 + 3 8
a - b 從一個數字中減去另一個數字 10 - 4 6
a * b 乘兩個數字 7 * 3 21
a / b 除一個數字
以另一個
20 / 5 4
取餘數 a % b 返回除餘數 10 % 3 1
乘冪 a ** b 將數字乘冪 2 ** 3 8

遞增和遞減

操作 語法 描述 範例 結果
遞增 ++a 增加一(前置) let a = 5;
++a;
6
遞增 a++ 增加一(後置) let a = 5;
a++;
5 (然後是 6)
遞減 --b 減少一(前置) let b = 5;
--b;
4
遞減 b-- 減少一(後置) let b = 5;
b--;
5 (然後是 4)

計算並賦值

操作 語法 描述 範例 結果
加並賦值 a += b 計算並賦值 let x = 10;
x += 5;
15
減並賦值 a -= b 減並賦值 let x = 10;
x -= 3;
7
乘並賦值 a *= b 乘並賦值 let x = 10;
x *= 2;
20
除並賦值 a /= b 除並賦值 let x = 10;
x /= 2;
5
取餘數並賦值 a %= b 取餘數並賦值 let x = 10;
x %= 3;
1

3.2 內建方法

在 JavaScript 中,有一個內建的物件 Math 用於執行各種數學操作。

1. Math.round():

將數字四捨五入到最近的整數。

JavaScript
    
      let rounded = Math.round(4.6); // 5
    
  

2. Math.ceil():

將數字向上取整到最近的整數。

JavaScript
    
      let ceil = Math.ceil(4.2); // 5
    
  

3. Math.floor():

將數字向下取整到最近的整數。

JavaScript
    
      let floor = Math.floor(4.8); // 4
    
  

4.Math.random():

返回一個0到1之間的隨機數。

JavaScript
    
      let random = Math.random();
    
  

5. Math.max() 和 Math.min():

返回一組數字中的最大值和最小值。

JavaScript
    
      let max = Math.max(1, 2, 3, 4); // 4
      let min = Math.min(1, 2, 3, 4); // 1
    
  

6. Math.sqrt():

返回數字的平方根。

JavaScript
    
      let sqrt = Math.sqrt(16); // 4
    
  

7. Math.pow():

返回將數字乘冪後的結果。

JavaScript
    
      let pow = Math.pow(2, 3); // 8
    
  

3.3 字串轉數字

函數 parseInt():

將字串轉換為整數。

JavaScript
    
      let int = parseInt('123'); // 123
    
  

函數 parseFloat():

將字串轉換為浮點數。

JavaScript
    
      let float = parseFloat('3.14'); // 3.14
    
  

函數 Number():

將值轉換為數字。

JavaScript
    
      let num = Number('42'); // 42
    
  

檢查值

函數 isNaN():

檢查一個值是否是 NaN (不是數字)。

JavaScript
    
      let isNotNumber = isNaN('hello'); // true
    
  

函數 isFinite():

檢查一個值是否是有限數字(是否為無限)。

JavaScript
    
      let finite = isFinite(10); // true
      let notFinite = isFinite(Infinity); // false
    
  

3.4 JavaScript 中的數字特點

1. 數字界限

在 JavaScript 中,數字以雙精度浮點數形式表示,具有一些限制:

  • 最大值: Number.MAX_VALUE
  • 最小值: Number.MIN_VALUE
  • 正無窮: Infinity
  • 負無窮: -Infinity
  • 不是數字 (NaN): 一個不是數字的值

2. 數字精度

處理浮點數可能會導致精度問題:

JavaScript
    
      let sum = 0.1 + 0.2;
      console.log(sum); // 0.30000000000000004
    
  

這在所有編程語言中都是如此 - JavaScript 也不例外。

3. 安全整數

在 JavaScript 中有一個概念叫做"安全"整數,這些整數可以被準確地表示為浮點數:

  • 最大的安全整數: Number.MAX_SAFE_INTEGER (253 - 1)
  • 最小的安全整數: Number.MIN_SAFE_INTEGER (-(253 - 1))
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION