array.map(parseInt)

[‘1’, ‘2’, ‘3’].map(parseInt)输出什么
这是一个很偏僻的知识点,会导致你每次看的时候都会觉得很惊讶,但是看了以后就觉得很简单,过一段时间后忘得一干二净,所以我决定写一个博客来提醒自己:
输出:[1,NaN,NaN].
首先让我们回顾一下,map函数的第一个参数callback:

在这里插入图片描述
然后是parseInt函数
在这里插入图片描述
这两个个函数所接收的参数如上所示。
了解这两个函数后,我们可以模拟一下运行情况

parseInt(‘1’, 0) //radix为0时,且string参数不以“0x”和“0”开头时,按照10为基数处理。这个时候返回1
parseInt(‘2’, 1) //基数为1(1进制)表示的数中,最大值小于2,所以无法解析,返回NaN
parseInt(‘3’, 2) //基数为2(2进制)表示的数中,最大值小于3,所以无法解析,返回NaN
map函数返回的是一个数组,所以最后结果为[1, NaN, NaN]

这是MDN和W3School对这两个函数的解释。

发布了20 篇原创文章 · 获赞 5 · 访问量 2070

猜你喜欢

转载自blog.csdn.net/qq_42859887/article/details/105483542