["1", "2", "3"].map(parseInt)

1.parseInt()

用来解析字符串,返回整数,有几个特点:
1、无视被解析字符串最前和最后的空格,即:” 111 “和”111”是一样的
2、正规格式:parseInt(string,radix)
第一个参数是被解析的字符串,第二个参数是进制(可不写)

第二个参数的特点:
1、如果radix省略或为0,则按默认进制(十进制)进行解析
2、radix为2~36之间的整数,如果在这个范围之外,返回NaN
3、string首字符为0x(0X)则默认解析为16进制
4、最好加上第二个参数,不然碰到首字符为0,其会因为浏览器的不同而执行八进制或十进制

注意:解析从第一个可以解析的字符开始,到第一个不能解析的字符(如空格,标点符号,字母等)结束。后面的字符不再解析。如果第一个字符就不可以解析,则返回NaN。

2.parseFloat()和parseInt()

parseInt()可以带参数,指定二进制、八进制或者十六进制(默认十进制),而parseFloat()不带参数,不能解析八进制、十六进制数,就只能按十进制进行。

3.map方法

array1.map(callbackfn[, thisArg])
对数组的每个元素,调用定义的回调函数,返回一个数组包含结果
参数:
array1:必须。一个数组对象
callbackfn:必须。最多接受三个参数(数组元素的值,数组元素的索引,包含该元素的数组对象)的回调函数
thisArg:可选

[“1”, “2”, “3”].map(parseInt)

值为:[1, NaN, NaN]
原因:parseInt接收的是两个参数,map传递的是3个参数。
即[“1”, “2”, “3”].map(parseInt)相当于:

parseInt('1', 0);
parseInt('2', 1);
parseInt('3', 2);

第一行里:’1’按十进制转换输出1;
第二行里:1不在2~36之间,输出NaN;
第三行里:’3’里面没有合法的二进制数,输出NaN;
所以,结果为[1, NaN, NaN]。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值