幽默:Javascript為什麼算術沒算好?
JS的整數轉換函式parseInt在轉換特別大的整數會出錯:
parseInt(0.5); // => 0 parseInt(0.05); // => 0 parseInt(0.005); // => 0 parseInt(0.0005); // => 0 parseInt(0.00005); // => 0 parseInt(0.000005); // => 0 parseInt(0.0000005); // => 5 |
parseInt函式預設將輸入引數視同“字串String”型別,然後才開始解析這個輸入引數;
如果輸入引數不是字串,則轉化為“字串String”型別。
但是對於對於非常小的和非常大的數字,在其被轉換為字串的同時轉換為指數表示。
0.0000005 :"5e-7" 999999999999999999999 (21 9) : "1e+21" |
那麼對於
parseInt(0.0000005)
則轉為字串的指數:
parseInt("5e-7")
最後輸出:
5
相關文章
- 什麼才算好的監控系統?
- 幽默:為什麼人工智慧比不上貓狗?人工智慧
- javascript怎麼實現算術加法運算JavaScript
- 為什麼在遊戲中製造幽默這麼難?遊戲
- 為什麼Hook沒有ErrorBoundary?HookErrorORB
- java中a=a++值為什麼沒有改變?棧運算解析Java
- 幽默:什麼是價值?
- 幽默:什麼是FAANG? - emily
- 幽默:為什麼DDD的Bounded Context翻譯為"有界上下文"?Context
- 為什麼沒有普及128位操縱系統的計算機?計算機
- 程式設計沒點為什麼,生活就是十萬個為什麼程式設計
- MySQL Connectors為什麼沒有javaMySqlJava
- OptionalInt為什麼沒有ofNullable()方法Null
- Twitter為什麼沒有當機?
- 幽默:兩個沒有使用DDD的幽默
- 為什麼 JavaScript 的 this 要這麼用?JavaScript
- 幽默:什麼是離線思考?
- JavaScript 為什麼能活到現在?JavaScript
- 為什麼 JavaScript 會無處不在?JavaScript
- 什麼是技術債,為什麼要還技術債?
- 為什麼業務天天問技術你的技術產生什麼業務價值?可以到測試這邊為什麼天天覺得業務測試沒技術含量?
- 沒什麼技術含量的Remove Before FlightREM
- 為什麼要“東數西算”?
- 雲端計算技術是什麼?雲端計算有什麼優勢?
- 為什麼Web前端語言只有JavaScript?Web前端JavaScript
- 為什麼 JavaScript 是 TypeScript 的基礎JavaScriptTypeScript
- 為什麼?為什麼?Java處理排序後的陣列比沒有排序的快?想過沒有?Java排序陣列
- SEO為什麼沒辦法快速見效
- 為什麼你沒見過年終獎!
- Ubuntu 安裝後為什麼沒有中文?Ubuntu
- [20220415]為什麼沒有子子池.txt
- 幽默:真實世界中的計算機書籍在講什麼? - HAhmadi15計算機
- 幽默:程式設計師看比爾蓋茲為什麼要離婚?程式設計師
- 計算機為什麼要用補碼計算機
- 詳解 Python 的二元算術運算,為什麼說減法只是語法糖?Python
- 為什麼 JavaScript 要設計原型模式JavaScript原型模式
- 為什麼我喜歡JavaScript的Optional ChainingJavaScriptAI
- 為什麼JavaScript需要模組化開發?JavaScript