js中的parseInt("08") 得到0的问题

javascript 中的parseInt()有两个参数,第一个是要转换的值,第二个是要转换的进制,所以:

parseInt("8") = 8

parseInt("08") = 0

要转换08,则需要:

parseInt("08", 10) = 8

表示要转换为十进制


原因:

八进制的表示通常在数字前面加"0",所以当08出现时,该函数自动认为要转换数字是八进制,所以逢八进一。

十六进制则为数字前加0x,所以如果parseInt("0x16"),则不会得到16.

你可能感兴趣的:(js中的parseInt("08") 得到0的问题)