--- tags: Javascript, disqus: hackmd --- # parseInt與parseFloat|chrisHsiao 在做字串轉數字的時候,通常我都是使用parseInt(),來完成。 今天在做有小數點的字串轉成數字的時候,卻發現轉完後我的小數點都不見了,只留下整數!! goooooogle了一下,原來parseInt除了把自串轉成數字外,還是個整數,所以小數點後面才會都不見了。 只要改用parseFloat就沒問題了。 ## parseInt 以前我都是這樣轉,後來去看了MDN才知道人家還有第二個參數可以使用 ```javascript= var a = '10'; var b = '10.1111'; parseInt(a); // 10 parseInt(b); // 10 ``` 第二個參數,帶入數字2-36 ```javascript= var a = '10'; parseInt(a , 2); // 代表要把10轉成2進位來表示 parseInt(a , 8); // 代表要把10轉成8進位來表示 parseInt(a , 10); // 代表要把10轉成10進位來表示 parseInt(a , 16); // 代表要把10轉成10進位來表示 ``` ## parseFloat 使用parseFloat把字串轉成數字,可以把小數點完整表現出來。 ```javascript= var a = '10.1111'; var b = '10'; parseFloat(a); // 10.1111 parseFloat(b); // 10 ``` ## 參考文獻 [parseInt 和 parseFloat 函數](https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Obsolete_Pages/Obsolete_Pages/Obsolete_Pages/%E9%A0%90%E5%85%88%E5%AE%9A%E7%BE%A9%E7%9A%84%E5%87%BD%E6%95%B8/parseInt_%E5%92%8C_parseFloat_%E5%87%BD%E6%95%B8) --- ###### tags: `Javascript` `parseInt` `parseFloat` `字串轉數字` `string to int`