JavaScript - Number 物件



JavaScript 的Number物件將數值資料表示為浮點數。它包含用於處理數字的不同屬性(常量)和方法。通常,您不需要擔心Number物件,因為瀏覽器會自動將數字字面量轉換為數字類的例項。

可以使用 Number 建構函式定義 JavaScript Number 物件。可以使用 Number() 函式將其他型別的資料(例如字串等)轉換為數字。

JavaScript 數字始終儲存為浮點值(十進位制數)。JavaScript 並不區分整數值和浮點值。JavaScript 使用 IEEE 754 標準定義的 64 位浮點格式表示數字。

語法

建立number物件的語法如下:

const val = new Number(number);

如果您在 number 位置提供任何非數字引數,則該引數無法轉換為數字,它將返回NaN(非數字)。

我們還可以透過將數值賦給變數來建立數字基元:

let num1 = 24;
let num2 = 35.65;

JavaScript 會自動將數字基元轉換為 Number 物件。因此,我們可以對數字基元使用 Number 物件的所有屬性和方法。

Number 屬性

以下是每個屬性及其說明的列表。

序號 屬性和描述
1

EPSILON

它表示 1 和大於 1 的最小浮點數之間的差值。

2

MAX_SAFE_INTEGER

它返回最大安全整數值。

3

MAX_VALUE

JavaScript 中數字可能具有的最大值 1.7976931348623157E+308。

4

MIN_SAFE_INTEGER

它返回最小安全整數值。

5

MIN_VALUE

JavaScript 中數字可能具有的最小值 5E-324。

6

NaN

等於非數值。

7

NEGATIVE_INFINITY

小於 MIN_VALUE 的值。

8

POSITIVE_INFINITY

大於 MAX_VALUE 的值。

9

prototype

Number 物件的靜態屬性。使用 prototype 屬性可以為當前文件中的 Number 物件分配新屬性和方法。

10

constructor

返回建立此物件例項的函式。預設情況下,這是 Number 物件。

Number 方法

Number 物件只包含作為每個物件定義一部分的預設方法(例項方法和靜態方法)。

例項方法

序號 方法及描述
1

toExponential()

強制數字以指數表示法顯示,即使數字在標準表示法的範圍內。

2

toFixed()

格式化數字,指定小數點右側的位數。

3

toLocaleString()

返回當前數字的字串值版本,格式可能根據本地設定而有所不同。

4

toPrecision()

定義要顯示的數字的總位數(包括小數點左側和右側的位數)。

5

toString()

返回數字值的字串表示形式。

6

valueOf()

返回數字的值。

靜態方法

序號 方法及描述
1

isNaN()

檢查值是否為有效數字。

2

isFinite()

檢查數字是否為有限數。

3

isInteger()

當數字為整數值時返回布林值。

4

isSafeInteger()

確保整數是一個安全整數。

5

parseFloat()

從字串中解析浮點值。

6

parseInt()

從字串中解析整數值。

示例

讓我們來看幾個例子來演示 Number 的屬性和方法。

示例:建立 Number 物件

在下面的示例中,num 變數包含值為 20 的數字物件。在輸出中,您可以看到 num 變數的型別是物件。

<html>
<body>
   <p id = "output"> </p>
   <script>
      const num = new Number(20);
      document.getElementById("output").innerHTML =  
      "num = " + num + "<br>" + 
      "typeof num : " + typeof num;
   </script>
</body>
</html>

輸出

num = 20
typeof num : object

示例:Number 屬性

在下面的示例中,我們顯示了一些 Number 屬性。您應該嘗試列印更多屬性。

<html>
<body>
<div id="output"></div>
   <script>
      document.getElementById("output").innerHTML =
      "Max Value : " + Number.MAX_VALUE + "<br>"
      +"Min Value : " + Number.MIN_VALUE + "<br>"
      +"Positive Infinity : " + Number.POSITIVE_INFINITY + "<br>"
      +"Negative Infinity : " + Number.NEGATIVE_INFINITY + "<br>"
      +"NaN : " + Number.NaN + "<br>";
   </script>
</body>
</html>

輸出

Max Value : 1.7976931348623157e+308
Min Value : 5e-324
Positive Infinity : Infinity
Negative Infinity : -Infinity
NaN : NaN

示例:Number 方法

在下面的示例中,我們使用了一些 Number 的屬性。您可以嘗試編輯程式以使用更多方法。

<html>
<body>
<div id="output"></div>
   <script>
      const num = 877.5312
      document.getElementById("output").innerHTML =
      "num.toExponetial() is : " + num.toExponential()+ "<br>"
      +"num.toFixed() is : " + num.toFixed() + "<br>"
      +"num.toPrecision(2) is : " + num.toPrecision(2) + "<br>";
   </script>
</body>
</html>

輸出

num.toExponetial() is : 8.775312e+2
num.toFixed() is : 878
num.toPrecision(2) is : 8.8e+2

JavaScript Number() 函式

Number() 函式將變數轉換為數字。您可以使用它來更改變數的資料型別。

let num = Number(val)

這裡 val 是一個變數或值,需要轉換為數字。它不會建立一個數字物件,而是返回一個原始值。

示例

在下面的示例中,我們將整數和字串值傳遞給 Number() 函式。在輸出中,程式碼列印數值。num2 變數的型別是數字,因為 Number() 函式返回原始數字值。

<html>
<body>
   <p id = "output"> </p>
   <script>
      let num = Number(10);
      document.getElementById("output").innerHTML = 
      "num = " + num + "<br>" + 
	   "typeof num = " + typeof num;
   </script>
</body>
</html>

輸出

num = 10
typeof num = number

示例:將數字字串轉換為數字

我們可以使用 Number() 函式將數字字串轉換為數字。嘗試以下示例:

<html>
<body>
   <p id = "output"> </p>
   <script>
      let str = "102.34";
      let num = Number(str);
      document.getElementById("output").innerHTML =
      "num = " + num + "<br>" +
      "typeof num = " + typeof num;
   </script>
</body>
</html>

輸出

num = 102.34
typeof num = number

嘗試使用不同的數字,例如整數、浮點數、八進位制數、十六進位制數等,來測試上面的示例。

廣告