首頁 > web前端 > js教程 > js如何將字串轉數字?

js如何將字串轉數字?

青灯夜游
發布: 2020-07-18 14:50:01
原創
4569 人瀏覽過

js將字串轉數字的方法:1、使用轉換函數parseInt()或parseFloat();parseInt()可以將值轉換成整數,parseFloat()可以把值轉換成浮點數。 2.使用Number()函數,把物件的值轉換為數字。

js如何將字串轉數字?

方法1:使用轉換函數parseInt()或parseFloat()

js提供了parseInt ()和parseFloat()兩個轉換函數。前者把數值轉換成整數,後者則將數值轉換成浮點數。只有對String類型呼叫這些方法,這兩個函數才能正確運作;對其他類型回傳的都是NaN(Not a Number)。

parseInt

根據 JsPerf.com 的基準測試,大多數瀏覽器對 parseInt 的最佳回應。雖然它是最快的方式,但使用preseInt 會碰到一些常見陷阱:

parseInt("08"); // returns 0 部分老浏览器.
parseInt("44.jpg"); // returns 44
登入後複製

parseInt: 沒有傳入基數時,預設是傳入的基數為10 parseInt(num, 10),如果你不知道num 屬性的類型,不要使用parseInt 進行字串轉數字。

parseFloat

如果你不解析 16 進位數,這是一個非常好的選擇。例如:

parseInt(-0xff); // returns -255
parseInt("-0xFF"); // returns -255
parseFloat(-0xff); // returns -255
parseFloat("-0xFF"); // returns 0
登入後複製

注意:字串中的負十六進位數字是一個特殊情況,如果你用 parseFloat 解析,結果是不正確的。為了避免程序出現 NaN 的情況,應該檢查轉換後的值。

parseFloat("44.jpg"); // return 44
登入後複製

parseFloat: 轉換十六進位數時要小心,如果你不知道要轉換物件的類型,不要使用 parseFloat。

方法2:使用Number()函數

#Number() 函數把物件的值轉換為數字;如果物件的值無法轉換為數字,那麼Number() 函數傳回NaN。

範例:

var test1= new Boolean(true);
var test2= new Boolean(false);
var test3= new String("999");
var test4= new String("999 888");

document.write(Number(test1)+ "<br />");
document.write(Number(test2)+ "<br />");
document.write(Number(test3)+ "<br />");
document.write(Number(test4)+ "<br />");
登入後複製

輸出;

1
0
999
NaN
登入後複製

方法3:利用js變數弱型別轉換

舉個小例子,一看,就會明白了。

var str= &#39;012.345 &#39;;
var x = str-0;
x = x*1;
登入後複製

上例利用了js的弱型別的特點,只進行了算術運算,實現了字串到數字的型別轉換,不過這個方法還是不推薦的

推薦教學:《JavaScript影片教學

以上是js如何將字串轉數字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
js
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板