首頁  >  文章  >  web前端  >  JavaScript探秘:用parseInt()進行數值轉換

JavaScript探秘:用parseInt()進行數值轉換

高洛峰
高洛峰原創
2016-11-28 14:44:231374瀏覽

使用parseInt()你可以從字串中取得數值,該方法接受另一個基數參數,這經常省略,但不應該。當字串以」0″開頭的時候就有可能會出問題,例如,部分時間進入表單域,在ECMAScript 3中,開頭為」0″的字串被當做8進位處理了,但這已在ECMAScript 5中改變了。為了避免矛盾和意外的結果,總是指定基數參數。

var month = "05",
    year = "09";
month = parseInt(month, 10);
year = parseInt(year, 10);
alert(month);
alert(year);

此例中,如果你忽略了基數參數,如parseInt(year),返回的值將是0,因為「09」被當做8進位(好比執行parseInt( year, 8 )),而09在8進制中不是個有效數字。

替換方法是將字串轉換成數字,包括:

+"08" // 结果是 8
Number("08") // 8

這些通常快於parseInt(),因為parseInt()方法,顧名思意,不是簡單地解析與轉換。但是,如果你想輸入例如“08 hello”,parseInt()將返回數字,而其它以NaN告終。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn