parseInt——你不知道的那一面

这篇博客详细探讨了JavaScript中的parseInt函数,不仅介绍了它如何将字符串转换为数字,还揭示了其第二个参数——基数(radix)的神秘之处。通过具体的例子,解释了当基数指定或未指定时,parseInt如何处理不同类型的输入,特别是对于0x开头的字符串和超出常规进制范围的值。最后,对比了parseInt与parseFloat的区别,指出parseFloat在处理小数点后的数值上的优势。
摘要由CSDN通过智能技术生成

众所周知的parseInt()

parseInt是将string类型转换为number类型的一种方法。
如果不是string类型,内部会将其先—>string—>number。
其与Number()方法的区别,详见:number数据类型及转换详解

不为人知的parseInt()——神秘的第二个参数

parseInt([value], [radix])
@params:
value: 待转换的字符串(或其他类型值)
radix: 基数(进制)

举个栗子:

parseInt("2AF5",16)

如果你认为是将字符串“2AF5”转换为16进制,那就大错特错了!
In fact, 这句代码表示的意思是:将字符串“2AF5”当作16进制的值,并将其转换为10进制~

具体计算过程为:
2AF5 = 5 * 160 + 15 * 161+ 10 * 162+ 2 * 163 = 10997

在这里插入图片描述
有一些特殊情况需要注意:

  • parseInt()的第二个参数radixÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>