将大数字从二进制转换为十六进制是错误的

时间:2015-08-28 19:10:35

标签: javascript binary hex converter

我正在使用一种简单的技术将二进制数转换为十六进制数。

parseInt('1011110000',2).toString(16) == '2f0'
parseInt('111110011111101111100111011011001',2).toString(16) == '1F3F7CED9'

使用更大的二进制数,我遇到了一个问题:

parseInt('11000011010011001100110011001100110011001100110011001100',2).toString(16);

返回c34cccccccccd0而不是正确的值c34cccccccccc

减去四位解决问题:

parseInt('1100001101001100110011001100110011001100110011001100',2).toString(16);

返回c34cccccccccc

为什么会这样?如何避免此问题并将大二进制数转换为十六进制数?

0 个答案:

没有答案