发布网友 发布时间:2022-04-26 16:03
共1个回答
热心网友 时间:2022-05-16 09:52
以下是w3school的parseInt()解释原文:
parseInt(string, radix)
参数 描述
string 必需。要被解析的字符串。
radix 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。
如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。
可见,parseInt()含有两个参数的时候,不是将string转化为radix的形式。radix的作用是告诉parseInt中string的形式。
所以,parseInt('32',2)的意思是32是一个2进制的数字,但是2进制数字不可能以3开头,因此解析结果是NaN。parseInt('032',2)和parseInt('0x32',2)中string都是以0开头,符合2进制特点,但是因为后面的数字不是二进制数字,所以解析结果最后是0
你理解错了parseInt()函数的意义而已