分析 [‘1‘, ‘2‘, ‘3‘].map(parseInt) 答案是多少?

分析 [‘1‘, ‘2‘, ‘3‘].map(parseInt)答案

[1,NaN,NaN]

parseInt(string,radix)
string:需要转换的字符
radix:表示进制。省略radix或radix=0,则数字将以十进制解析。数字2-36之间的整型。默认使用10,表示10进制.
例如:

parseInt(‘123’,5)
//将"123"看作5进制的数,返回十进制数 38 => 1* 5^ 2 + 2* 5^ 1 + 3*5^0 = 38

array.map(callback[,thisArg]);
将数组的各个元素依次传入到回调函数callback,回调函数返回的结果依次替换原数组对应的元素。

回调函数callback 会被自动传入三个参数:数组元素,元素索引,原数组本身。

map为parseInt传3个参数(elem,index,array),其中index为数组索引
因此,map 遍历 [“1”, “2”, “3”],相应 parseInt 接收参数如下

parseInt(‘1’, 0); // 1,radix为0,默认使用十进制
parseInt(‘2’, 1); // NaN,radix值在2~36之间,无法解析1
parseInt(‘3’, 2); // NaN,二进制中只存在0 1,无法解析3

map函数返回的是一个数组,所以最后结果为[1, NaN, NaN]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值