JavaScript 全域物件

JavaScript 提供一個全域物件,它包含一組全域使用的屬性、函式和物件,無需使用命名空間。 這些屬性包括: Infinity NaN undefined 這些函式包括: decodeURI() decodeURIComponent() encodeURI() encodeURIComponent() eval() isFinite() isNaN() parseFloat() parseInt() 以下為這些物件: Array Boolean Date Function JSON Math Number Object RegExp String Symbol 以及以下錯誤類型: Error EvalError RangeError ReferenceError SyntaxError TypeError URIError 我在JavaScript 錯誤參考文章中描述了這些錯誤。 現在我們來介紹一下全域屬性和函式。 Infinity Infinity 在 JavaScript 中代表無窮大。 要獲得負無窮大,可使用-運算子:-Infinity。 這些值等同於 Number.POSITIVE_INFINITY 和 Number.NEGATIVE_INFINITY。 將任何數字加上 Infinity,或將 Infinity 乘以任何數字,結果仍為 Infinity。 NaN 全域的 NaN 值代表非數字。它通常由零除以零、無效的 parseInt() 執行或其他運算返回。 parseInt() //NaN parseInt('a') //NaN 0/0 //NaN 特別注意的是,NaN 值永遠不等於任何其他 NaN 值。必須使用 isNaN() 全域函式來檢查值是否為 NaN。...

parseFloat() 方法

瞭解 JavaScript Number 物件的 parseFloat() 方法 將參數解析為浮點數並返回。參數是一個字串: Number.parseFloat('10') // 10 Number.parseFloat('10.00') // 10 Number.parseFloat('237,21') // 237 Number.parseFloat('237.21') // 237.21 Number.parseFloat('12 34 56') // 12 Number.parseFloat(' 36 ') // 36 Number.parseFloat('36 is my age') // 36 Number.parseFloat('-10') // -10 Number.parseFloat('-10.2') // -10.2 如你所見,Number.parseFloat() 非常靈活。它還可以將帶有文字的字串轉換為數字,並提取第一個數字,但字串必須以數字開頭: Number.parseFloat('I am Flavio and I am 36') // NaN 它僅處理基數為 10 的數字。

如何使用JavaScript將字符串轉換為數字

學習如何使用JavaScript將字符串轉換為數字 JavaScript提供了多種將字符串值轉換為數字的方法。 最佳方法:使用Number對象 我個人認為最好的方法是使用Number對象,在非構造函數上下文中使用(不使用new關鍵字): const count = Number('1234') //1234 這也會處理小數。 Number是一個可以執行多個操作的包裝對象。如果我們使用構造函數(new Number("1234")),它將返回一個Number對象而不是數字值,所以要注意。 注意數字之間的分隔符: Number('10,000') //NaN Number('10.00') //10 Number('10000') //10000 如果需要解析帶有小數分隔符的字符串,請改用Intl.NumberFormat。 其他方法 使用parseInt()和parseFloat() 對於整數,另一個很好的解決方案是調用parseInt()函數: const count = parseInt('1234', 10) //1234 不要忘記第二個參數,即基數,對於十進制數字始終為10,否則轉換可能會嘗試猜測基數並產生意外結果。 parseInt()嘗試從不僅包含數字的字符串中獲取數字: parseInt('10 lions', 10) //10 但是,如果字符串不以數字開頭,將返回NaN(Not a Number): parseInt("I'm 10", 10) //NaN 與Number一樣,它在數字之間的分隔符上不可靠: parseInt('10,000', 10) //10 ❌ parseInt('10.00', 10) //10 ✅(被視為小數,被截斷) parseInt('10.000', 10) //10 ✅(被視為小數,被截斷) parseInt('10.20', 10) //10 ✅(被視為小數,被截斷) parseInt('10.81', 10) //10 ✅(被視為小數,被截斷) parseInt('10000', 10) //10000 ✅ 如果要保留小數部分而不僅僅獲得整數部分,請使用parseFloat()。請注意,與parseInt()不同,它只接受一個參數 - 要轉換的字符串:...