在JavaScript中,parseInt()函數和parseFloat()函數功能類型,都是將“數字字符串”轉化為一個數值。之前我們講解的那幾個函數可能用得不是很多,但是這兩個函數在實際開發用得非常的多,大家要打醒十二分精神把這兩個函數給記住。
parseInt()函數主要將首位為數字的字符串轉化為數字。如果字符串不是以數字開頭,則將返回NaN。
語法:
parseInt(數字字符串)
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> var str = "10"+20; var sum = parseInt("10")+20; document.write(str+"<br/>"); document.write(sum); </script> </head> <body> </body> </html>
在浏覽器預覽效果如下:
分析:
大家可以看到,如果一個字符串跟一個數字相加,JavaScript會將數字轉化為字符串,然後再進行相加。這一知識點,我們在“JavaScript表達式”這一節已經詳細講解了。
不過,我們如果將數字字符串“10”使用parseInt()函數轉換為數值型數據,則相加的結果就不是字符串了,而是數字型數據。大家稍微琢磨一下。
parseFloat()函數主要將首位為數字的字符串轉化為浮點型數字。如果字符串不是以數字開頭,將返回NaN。
語法:
parseFloat(數字字符串)
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> var str = "3.14"+20; var sum = parseFloat("3.14")+20; document.write(str+"<br/>"); document.write(sum); </script> </head> <body> </body> </html>
在浏覽器預覽效果如下:
分析:
具體分析跟parseInt()函數的例子分析一樣,在此不累贅解析。