繁体   English   中英

如何在 Javascript 中将字节转换为整数?

[英]How do I convert Bytes to Integers in Javascript?

我在 Python 上运行一个服务器,它将数据发送到 JavaScript。 但是,此服务器只能发送字节。 我需要数据采用 integer 形式。 有没有办法在 Javascript 中转换它。

这是接收数据的代码行。 如何将 evt.data 从字节转换为整数。 我从 Python 收到的是 b' 后跟数字。 示例:b'120'

ws.onmessage = function (evt) {
                  var received_msg = evt.data;

这是用于从 Python 发送数据的代码行。 它是 UDP ,不幸的是只能发送字节。 我将数据从 python 服务器发送到 python 客户端,然后发送到 python ZBF56D570E62CDB573C87B185262961 服务器。 不幸的是,python web 套接字服务器无法发送通过“int()”方法转换为整数的字节。

sock.sendto(bytes(MESSAGE, "utf-8"), (ip_address, UDP_PORT))

我需要做什么? 提前致谢: :)

我希望这有帮助

 function binToInt(bin){ return parseInt(bin, 2); } console.log(binToInt("00101001")); //Outputs 41

Javascript 不支持 64 位整数。 这就是说这个 function 应该对 32 位有符号整数起作用:

var byteArrayToInt = function(byteArray) {
    var value = 0;
    for (var i = byteArray.length - 1; i >= 0; i--) {
        value = (value * 256) + byteArray[i];
    }

    return value;
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM