在 javascript 中,使用 number() 函數將值轉換為數值型:字符串:number(string) 解析數字部分為數字。布爾值:true/false 轉換為 1/0。對象:如果有 valueof 或 tostring 方法,則調用獲取數字值。特殊情況:空值(空字符串、空數組、null、undefined)返回 0;infinity/-infinity 返回相應數字;nan 返回 nan。
如何將 JavaScript 值轉換為數值型
在 JavaScript 中,將值轉換為數值型涉及使用內置函數 Number()。此函數接受各種類型的值,包括字符串、布爾值和對象,并返回它們的數值等價物。
轉換字符串
要將字符串轉換為數字,可以使用 Number(string) 語法。函數將字符串中的數字部分解析為數字,而忽略任何非數字字符。
const numStr = '123.45'; const num = Number(numStr); // 結果:123.45
登錄后復制
轉換布爾值
布爾值 true 和 false 分別轉換為數字 1 和 0。
const bool = true; const num = Number(bool); // 結果:1
登錄后復制
轉換對象
如果對象具有 valueOf 或 toString 方法,則 Number() 函數將調用該方法以獲取數字值。否則,它將返回 NaN(非數字)。
const obj = {
valueOf() {
return 10;
}
};
const num = Number(obj); // 結果:10
登錄后復制
特殊情況
如果值為空字符串 (”)、空數組 ([])、null 或 undefined,Number() 函數將返回 0。
如果值是 Infinity 或 -Infinity,Number() 函數將返回相應的數字。
如果值是無效數字 (NaN),Number() 函數將返回 NaN。
注意:
Number() 函數不會改變原始值。它始終返回一個新的數值。
如果無法轉換值,Number() 函數將返回 NaN。因此,在使用轉換后的值之前,建議檢查它是否為 NaN。






