返回值是:[1,NaN,NaN]

parseIntmap函數都是常用的函數,可是 ["1", "2", "3"].map(parseInt) 為何返回不是[1,2,3]卻是[1,NaN,NaN]?

下面我們先來了解一下parseInt函數的使用方法。

parseInt() 函數

parseInt() 函數解析一個字符串參數,并返回一個指定基數的整數 (數學系統的基礎)。

語法

parseInt(string, radix)

參數 描述
string 必需。要被解析的字符串。
radix

可選。表示要解析的數字的基數。該值介于 2 ~ 36 之間。

如果省略該參數或其值為 0,則數字將以 10 為基礎來解析。如果它以 “0x” 或 “0X” 開頭,將以 16 為基數。

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

返回值

返回解析后的數字。

說明

當參數 radix 的值為 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數。

一下情況返回值為NaN

  • radix 小于 2 或大于 36
  • 第一個非空格字符不能轉換為數字。