结果:[1,NaN,NaN]
map()
将数组的每个元素传递给指定的函数处理,并返回处理后的数组。所以[‘1‘,‘2‘,‘3‘].map(parseInt)就是把1,2,3作为元素,0,1,2作为索引传给parseInt函数。即分别求出parseInt(‘1’,0),parseInt(‘2’,1),parseInt(‘3’,2),的结果
parseInt()
parseInt()函数接收两个参数,分别为string和radix
string:字母、数字、特殊字符等
radix:解析字符串的基数,基数规则如下:
(1)介于2-36之间;
(2)当参数为0,会根据十进制来解析
(3)如果忽略该参数,默认的基数规则为
- string以‘0x’开头,会将string的剩余部分解析为十六进制的整数
- string以0开头,后边的部分解析为八进制或者十六进制的数字
- string以1-9开头,解析为十进制的整数
- 如果一个字符串的第一个字符不能被转换为数字,返回NaN
结果分析
[‘1‘,‘2‘,‘3‘].map(parseInt)
parseInt(‘1’,0) 根据十进制进行解析,结果为1
parseInt(‘2’,1) 1不在2-36之间,返回NaN
parseInt(‘3’,2) 以二进制解析,二进制要求数字为0或1,这里的3超出范围,返回NaN
参考:https://blog.csdn.net/weixin_44135121/article/details/88050214 侵删