简单谈谈parseInt

最近面试高发题

[1, 2, 3].map(parseInt) 结果和原因?
结果:[1, NaN, NaN]
原因: [1, 2, 3].map(parseInt) 完整形式 => [1, 2, 3].map((val, k) => parseInt(val, k))
看看 parseInt的参数 第二个是进制数(默认为10),范围在2-36,当k不在这个范围,则返回NaN。

我们来练习一下

 [1, 2, 3, 3, 2, 1, 6, 7, 8, 9, 10, 11, 22].map(parseInt)
 // 结果?
 [1, NaN, NaN, NaN, 2, 1, NaN, NaN, NaN, NaN, 10, 12, 26]
 // 注意进制的转换 在数字层面最大9 11进制11 = 1 * 11 + 1 = 12
 // 这边只是简单的提醒 敲代码的应该都了解
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章