JavaScript 數字方法

JavaScript 數字方法

這些數字方法可用于所有 JavaScript 數字:

方法 描述
toString() 將數字作為字符串返回。
toExponential() 返回以指數表示法書寫的數字。
toFixed() 返回帶小數位數的數字。
toPrecision() 返回指定長度的數字。
ValueOf() 以數字形式返回數字。

toString() 方法

toString() 方法將數字作為字符串返回。

所有數字方法都可以用于任何類型的數字(文字、變量或表達式):

實例

let x = 123;
x.toString();
(123).toString();
(100 + 23).toString();

親自試一試

toExponential() 方法

toExponential() 返回字符串,其中的數字四舍五入并使用指數表示法書寫。

參數定義小數點后的字符數:

實例

let x = 9.656;
x.toExponential(2);
x.toExponential(4);
x.toExponential(6);

親自試一試

該參數是可選的。如果您不指定它,JavaScript 將不會對數字進行四舍五入。

toFixed() 方法

toFixed() 返回一個字符串,其中的數字帶有指定位數的小數部分。

實例

let x = 9.656;
x.toFixed(0);
x.toFixed(2);
x.toFixed(4);
x.toFixed(6);

親自試一試

提示:toFixed(2) 非常適合處理貨幣。

toPrecision() 方法

toPrecision() 返回一個字符串,其中包含指定長度的數字:

實例

let x = 9.656;
x.toPrecision();
x.toPrecision(2);
x.toPrecision(4);
x.toPrecision(6);

親自試一試

valueOf() 方法

valueOf() 以數字形式返回數字。

實例

let x = 123;
x.valueOf();
(123).valueOf();
(100 + 23).valueOf();

親自試一試

在 JavaScript 中,數字可以是原始值 (typeof = number) 或對象 (typeof = object)。

valueOf() 方法在 JavaScript 內部用于將 Number 對象轉換為原始值。

沒有理由在您的代碼中使用它。

提示:所有 JavaScript 數據類型都有 valueOf() 和 toString() 方法。

將變量轉換為數字

有 3 種 JavaScript 方法可用于將變量轉換為數字:

方法 描述
Number() 返回從其參數轉換而來的數字。
parseFloat() 解析其參數并返回浮點數。
parseInt() 解析其參數并返回整數。

上面的方法不是數字方法。它們是全局 JavaScript 方法

Number() 方法

Number() 方法可用于將 JavaScript 變量轉換為數字:

實例

Number(true);
Number(false);
Number("10");
Number("  10");
Number("10  ");
Number(" 10  ");
Number("10.33");
Number("10,33");
Number("10 33");
Number("Bill");

親自試一試

提示:如果無法轉換數字,則返回 NaN (Not a Number,非數字)。

日期上使用的 Number() 方法

Number() 也可以將日期轉換為數字。

實例

Number(new Date("1970-01-01"))

親自試一試

注釋:Date() 方法返回自 1970 年 1 月 1 日以來的毫秒數。

1970-01-02 和 1970-01-01 之間的毫秒數為 86400000:

實例

Number(new Date("1970-01-02"))

親自試一試

實例

Number(new Date("2017-09-30"))

親自試一試

parseInt() 方法

parseInt() 解析字符串并返回整數。允許有空格。僅返回第一個數字:

實例

parseInt("-10");
parseInt("-10.33");
parseInt("10");
parseInt("10.33");
parseInt("10 20 30");
parseInt("10 years");
parseInt("years 10");

親自試一試

如果無法轉換數字,則返回 NaN (Not a Number,非數字)。

parseFloat() 方法

parseFloat() 解析字符串并返回數字。允許有空格。僅返回第一個數字:

實例

parseFloat("10");
parseFloat("10.33");
parseFloat("10 20 30");
parseFloat("10 years");
parseFloat("years 10");

親自試一試

如果無法轉換數字,則返回 NaN (Not a Number,非數字)。

Number 對象方法

這些對象方法屬于 Number 對象:

方法 描述
Number.isInteger() 如果參數是整數則返回 true。
Number.isSafeInteger() 如果參數是安全整數,則返回 true。
Number.parseFloat() 將字符串轉換為數字。
Number.parseInt() 將字符串轉換為整數。

數字方法不能用于變量

上面的數字方法屬于 JavaScript Number 對象

這些方法只能像 Number.isInteger() 一樣訪問。

使用 X.isInteger() 其中 X 是一個變量,將導致錯誤:

TypeError X.isInteger is not a function.

Number.isInteger() 方法

如果參數是整數,則 Number.isInteger() 方法返回 true

實例

Number.isInteger(10);
Number.isInteger(10.5);

親自試一試

Number.isSafeInteger() 方法

安全整數指的是可以被精確表示為雙精度浮點數的整數。

如果參數是安全整數,則 Number.isSafeInteger() 方法返回 true

實例

Number.isSafeInteger(10);
Number.isSafeInteger(12345678901234567890);

親自試一試

注意

安全整數是從 -(253 - 1) 到 +(253 - 1) 的所有整數。

這是安全的:9007199254740991。這是不安全的:9007199254740992。

Number.parseFloat() 方法

Number.parseFloat() 解析字符串并返回數字。

允許有空格。僅返回第一個數字:

實例

Number.parseFloat("10");
Number.parseFloat("10.33");
Number.parseFloat("10 20 30");
Number.parseFloat("10 years");
Number.parseFloat("years 10");

親自試一試

如果無法轉換數字,則返回 NaN (Not a Number,非數字)。

注意

Number.parseInt() 和 Number.parseFloat() 這兩個方法與全局方法 parseInt() 和 parseFloat() 是相同的。

其目的在于全局方法的模塊化(以便更容易在瀏覽器外部使用相同的 JavaScript 代碼)。

Number.parseInt() 方法

Number.parseInt() 解析字符串并返回整數。

允許有空格。僅返回第一個數字:

實例

Number.parseInt("-10");
Number.parseInt("-10.33");
Number.parseInt("10");
Number.parseInt("10.33");
Number.parseInt("10 20 30");
Number.parseInt("10 years");
Number.parseInt("years 10");

親自試一試

如果無法轉換數字,則返回 NaN (Not a Number,非數字)。

完整的 JavaScript Number 參考手冊

如需完整的參考手冊,請訪問我們完整的 JavaScript Number 參考手冊

參考手冊包含所有 Number 對象屬性和方法的描述和實例。