JavaScript中的parseInt和Number函數


函數作用:
parseInt將字符串(String)類型轉為整數類型。
Number() 函數把對象(Object)的值轉換為數字。


語法不同:

parseInt(string, [radix])


string:必選參數,要被轉換的字符串

radix:可選,數字的基數。取值范圍在2~36。

如果該參數小於 2 或者大於 36,則 parseInt() 將返回 NaN。


<pre name="code" class="javascript">        alert("parseInt1返回 " + parseInt("1", 1));   //返回NaN
alert("parseInt0x123 " + parseInt("0x123")); //291
alert("parseInt000123 " + parseInt("000123")); //123


 

       當參數 radix 的值為 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數。       如果 string 以 "0x" 開頭,parseInt() 會把 string 的其余部分解析為十六進制的整數。如果 string 以 0 開頭,那么 ECMAScript v3 允許 parseInt() 的一個實現把其后的字符解析為八進制或十六進制的數字。如果 string 以 1 ~ 9 的數字開頭,parseInt() 將把它解析為十進制的整數。

Number(object)

Number返回的是數字,其參數是對象。


如果對象的值無法轉換為數字,那么 Number() 函數會返回 NaN。

        var test = new Date()
var testStr = new String("123");
var testStr1 = new String("5,000");
alert("Number(test) " + Number(test)); //返回1437631091369

alert("Number(testStr) " + Number(testStr)); //返回123

alert("Number(testStr1) " + Number(testStr1)); //返回NaN

 在 var testStr1 = new String("5,000") 中,字符串中含有千位符,因此造成無法轉換。雖然是很小的細節,但也應當謹慎。含有千位符的字符串,不能直接轉換,要先去掉千位符,再進行轉換,也是由此引出這篇博客。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com