JavaScript parseInt() 函數(shù)

定義和用法
parseInt() 函數(shù)可解析一個(gè)字符串,并返回一個(gè)整數(shù)。
當(dāng)參數(shù) radix 的值為 0,或沒有設(shè)置該參數(shù)時(shí),parseInt() 會(huì)根據(jù) string 來判斷數(shù)字的基數(shù)。
當(dāng)忽略參數(shù) radix , JavaScript 默認(rèn)數(shù)字的基數(shù)如下:
- 如果 string 以 "0x" 開頭,parseInt() 會(huì)把 string 的其余部分解析為十六進(jìn)制的整數(shù)。
- 如果 string 以 0 開頭,那么 ECMAScript v3 允許 parseInt() 的一個(gè)實(shí)現(xiàn)把其后的字符解析為八進(jìn)制或十六進(jìn)制的數(shù)字。
- 如果 string 以 1 ~ 9 的數(shù)字開頭,parseInt() 將把它解析為十進(jìn)制的整數(shù)。
語法
參數(shù) | 描述 |
---|---|
string | 必需。要被解析的字符串。 |
radix | 可選。表示要解析的數(shù)字的基數(shù)。該值介于 2 ~ 36 之間。 |
瀏覽器支持
所有主要瀏覽器都支持 parseInt() 函數(shù)
提示和注釋
注意: 只有字符串中的第一個(gè)數(shù)字會(huì)被返回。
注意: 開頭和結(jié)尾的空格是允許的。
注意:如果字符串的第一個(gè)字符不能被轉(zhuǎn)換為數(shù)字,那么 parseFloat() 會(huì)返回 NaN。
注意:在字符串以"0"為開始時(shí)舊的瀏覽器默認(rèn)使用八進(jìn)制基數(shù)。ECMAScript 5,默認(rèn)的是十進(jìn)制的基數(shù)。
實(shí)例
實(shí)例
我們將使用 parseInt() 來解析不同的字符串:
document.write(parseInt("10") + "<br>");
document.write(parseInt("10.33") + "<br>");
document.write(parseInt("34 45 66") + "<br>");
document.write(parseInt(" 60 ") + "<br>");
document.write(parseInt("40 years") + "<br>");
document.write(parseInt("He was 40") + "<br>");
document.write("<br>");
document.write(parseInt("10",10)+ "<br>");
document.write(parseInt("010")+ "<br>");
document.write(parseInt("10",8)+ "<br>");
document.write(parseInt("0x10")+ "<br>");
document.write(parseInt("10",16)+ "<br>");
</script>
以上實(shí)例輸出結(jié)果:
10
34
60
40
NaN
10
10
8
16
16
嘗試一下 ?
注意:舊瀏覽器由于使用舊版本的ECMAScript(ECMAScript版本小于ECMAScript 5,當(dāng)字符串以"0"開頭時(shí)默認(rèn)使用八進(jìn)制,ECMAScript 5使用的是十進(jìn)制),所以在解析("010") 將輸出8。

更多建議: