10 09/2014

parseInt(1/0, 19) 返回 18 ?

最后更新: Wed Sep 10 2014 12:37:50 GMT+0800

parseInt(1/0, 19)= ?

为毛?依次执行下面代码,可知

返回 Infinity 无穷大

parseInt 第一个参数被当作 文本 处理!16进制(0123456789abcde)时,b 就是十进制的 11

=18 = 357

19 进制中没有 n 所以被 parseInt 丢弃,而 19 进制中是有 f(0123456789abcdefghij) f 的!

继续 bt 一下

= NaN

这次又是为啥?

= 1 = NaN

因为英文字母26个!加上数字 0-9,所以 parsetInt 进制最大 36。

顺便说说

9007199254740992(253) 是 js 中最大的数字!