【发布时间】:2018-12-14 17:32:30
【问题描述】:
好吧,我很困惑,这并不比我想象的要容易...我想将二进制补码字符串转换为适当的数字:
-5 = '11111011' 根据Wikipedia
所以我认为以下会返回负 5,但事实并非如此。阅读维基百科后,似乎我所要做的就是减去一个然后反转位:
~(parseInt('11111011', 2) - 1)
但它返回 -251。令人困惑...
请注意,我将处理许多奇数位长度,并且不会都是 8 位。
【问题讨论】:
-
我查看了我能找到的关于它的每一个问题,但仍然无法让它发挥作用......
-
为什么这对你不起作用?
var binary = (-5 >>> 0).toString(2); // coerced to uint32 -
我正在尝试从字符串转换为数字,我不知道数字。
标签: javascript encoding binary type-conversion