這是 JavaScript 精粹的系列篇,涵蓋了 JavaScript 中最經常使用和最重要的方法,以及其它一些基礎知識。在這篇文章中,咱們將討論 Number 和 Mathjavascript
想閱讀更多優質文章請猛戳GitHub博客,一年百來篇優質文章等着你!前端
建議你們瞭解類型,只須要一點數學知識。java
JavaScript Essentials: Types & Data Structuresgit
5
和 5.12
是相同的類型。這是什麼意思? 全部JavaScript 數字都存儲爲雙浮點數。 JS會欺騙你,讓你認爲 var x = 1
是一個整數,但實際上它是一個浮點數而且等於 1.0
。github
若是你這方面感興趣,如下一些連接供你參考:segmentfault
本文的重點是 Number 對象的方法。安全
https://medium.com/dailyjs/ja...dom
number
'一個 「安全」 的數字是一個值保證爲你所說的值的數字。例如,若是試圖在代碼中使用900719925474099164
,它就會變成 900719925474099200
,這是由於它超出了安全數字範圍。ecmascript
咱們怎麼知道安全數字的範圍是多少?函數
也被稱爲科學記數法。
你可能已經注意到有像 parseInt
這樣的全局函數,可是這裏只用 Number.parseInt()
這是由於 JS 試圖擺脫全局函數而使用模塊。一些新的模塊方法被更新,而舊的全局方法沒有更新。 好比 isNan()
不一樣於 Number.isNan()
。
警告:下面提到的 vanilla JS 方法目前在這個的時間段內不可用。 (能夠在 Chrome控制檯中嘗試)在此處 查看提案。
在BigInt 可用以前,請使用庫 MikeMcl/bignumber.js 。
你可能已經嘗試在控制檯或任何地方上數字使用字符串的方法如 23.toString(2) // syntax error
這是由於如前面「數字建立基礎」中提到的 23.
,0
是可選的。
這意味着當你作 23.tostring(2)
, JS 認爲它只是一個數字。它應該足夠聰明,知道正在調用一個方法,可是好吧
。
解決方案:將數字包在括號中 (23).toString(2) //「10111」
或作一些很是奇怪的事...... 23..toString(2)
但請不要這樣作 😅
NaN 存在於 Number 對象上,可是被定義爲某些數學運算的結果,這些運算致使沒法將數值量化爲數字。 或者換句話說,它的命名不好, 「無效數字」或相似數字狀況會更好。
NaN
是有毒的,意思是它會把它接觸到的任何東西變成 請輸入代碼
NaN 。它是惟一不等於它自己的值,咱們能夠利用它來作一些像 x !== x
的事情,若是它返回 true
,那麼它就是 NaN
。
在這裏只包含了一些 Math 方法,可是有不少方法,請查看文檔。我沒有把它們所有包括在內,由於它們不言自明,而且只在你處理一個數字不少且重要的項目時纔會常常使用。
原文:
https://codeburst.io/javascri...
你的點贊是我持續分享好東西的動力,歡迎點贊!