parseInt()返回值

parseInt() 函數可解析一個字符串,并返回一個整數。

語法:parseInt(string, radix)
string:必需。要被解析的字符串。
radix:可選。表示要解析的數字的基數。該值介于 2 ~ 36 之間。
如果省略該參數或其值為 0,則數字將以 10 為基礎來解析;
如果它以 “0x” 或 “0X” 開頭,將以 16 為基數;
如果該參數小于 2 或者大于 36,則 parseInt() 將返回 NaN。

實例

parseInt("10"); //返回 10
parseInt("19",10); //返回 19 (10+9)
parseInt("11",2); //返回 3 (2+1)
parseInt("17",8); //返回 15 (8+7)
parseInt("1f",16); //返回 31 (16+15)
parseInt("010"); //未定:返回 10 或 8

計算方法

1乘以10的一次方+0*10的0次方=10+0=10
……

parseInt("19",37); //返回 NaN 基數不在2-36范圍內
parseInt("11",1); //返回 NaN 基數不在2-36范圍內
parseInt("92",8); //返回 NaN 9>8 字符串數字不能大于基數

拓展

["1", "2", "3"].map(parseInt)輸出什么?
["1", "2", "3"].map(parseInt)等同于
["1","2","3"].map(function(ele,index){
  return parseInt(ele,index)
})

等于調用了三次parseInt方法:
第一次 parseInt("1",0) //基數為0時,按照上邊陳述即為10進制,返回 1
第一次 parseInt("2",1)//基數為1,不在2-36范圍內,默認輸出NaN
第一次 parseInt("3",2)//基數為2,因為字符串3大于基數不合法,解析為NaN
答案也就是:[1, NaN, NaN]

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容