parseInt() 的第二個參數注意事項

一個參數

當 parseInt() 的參數爲一個時,它的作用就是將數字轉化爲整形比如

console.log(parseInt(123.123)); //123

另外轉換時應該注意以下內容

能將轉化爲數字類型的轉化爲數字類型,轉化不了的轉化爲NaN

比如

console.log(parseInt('123aaa'));  //NaN
console.log(parseInt('aaa123'));  //NaN

兩個參數

將基地進制的數轉化爲10進制數

如下面的這個將2進制的101轉化爲10進制的5

console.log(parseInt(101, 2));  //5

注意的事項來了~~~


  • 第二個參數的取值範圍是2~36之間
  • 如果省略該參數或其值爲 0,則數字將以 10 爲基礎來解析
  • 如果該參數小於 2 或者大於 36,則 parseInt() 將返回 NaN

舉個栗子

例1

let arr = [1, 2, 3, 4, 5];
let result = arr.map(parseInt);
console.log(result);

輸出結果爲
在這裏插入圖片描述
爲什麼呢?
這裏簡單分析一下,其實也就是上面所講的第二個參數應該注意的事項

map() 方法的第一個參數爲一個回調函數
回調函數裏面三個參數

  • 數組元素
  • 數組下標
  • 數組本身

然後執行的時候就是下面這個樣子

parseInt(1, 0);	//爲0則看做10進制 所以結果爲 1
parseInt(2, 1); // 爲1,直接返回NaN
parseInt(3, 2); // 爲2 ,2進制裏沒有3無法轉換,返回NaN
parseInt(4, 3);	// 爲2 ,2進制裏沒有3無法轉換,返回NaN
parseInt(5, 4); // 爲2 ,2進制裏沒有3無法轉換,返回NaN

例子2

跟上面類似

let arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length - 1; i++) {
  console.log(parseInt(arr[i], i));
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章