JS的parseInt(string,radix) 函数

做题:[‘1’,‘2’,‘3’].map(parseInt),发现parseInt还有另一个参数?

我查了相关博客,radix是可选参数,数字基数。如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。如果第二个参数是0、undefined和null,则直接忽略。

1.第一个参数string

第一个参数为要被解析值,如果不是字符串就会调用toString()方法将其转换为字符串,同时会忽略开头的空格部分。


2.第二个参数radix(重点)

radix表示字符串的基数,取值范围为(2--36) 当为范围以为的值时,结果会变为NaN,下列情况除外。
如果radix的值为undefined,0 或者 未定义,就会出现以下可能:
	如果第一个参数为“0x”开头,则radix为16,“Ox”后面的部分当作16进制进行解析
	如果第一个参数为“O”开头, 则radix为8进制 或者 10进制,这个要取决于radix的实现,ECMA5澄清了应该使用10进制,但不是所有浏览器都支持
	如果第一个参数的以任何其他值开头,则radix为10进制

猜你喜欢

转载自blog.csdn.net/weixin_62226731/article/details/125540042