将数字转换为完整二进制八位
Convert Numbers to FULL binary octets
取此IP地址:
192.168.1.1
我想把它分解成4个完整的二进制八位字节,所以:
11000000 . 10101000 . 00000001 . 00000001
.
我知道的所有转换,以及我在其他stackoverflow问题上发现的转换,只返回二进制数本身,例如:
当我想要00000001
时,(1 >>> 0).toString(2)
返回1
当我想要00000010
时,Number(2).toString(2)
返回10
是否有一个内置的javascript方法,我还没有遇到,或者我需要手动添加0之前取决于数字?
您可以使用 Number#toString
方法将基数2
转换为相应的二进制字符串。
var str = '192.168.1.1';
console.log(
// Split strings based on delimiter .
str.split('.')
// iterate over them
.map(function(v) {
// parse the String and convert the number to corresponding
// binary string afterwards add preceding 0's
// with help of slice method
return ('00000000' + Number(v).toString(2)).slice(-8)
// rejoin the string
}).join('.')
)
最简单的解决方案是在答案前加上零,然后使用负的子字符串值从右开始计数,而不是从左开始计数…
alert(("00000000" + (1 >>> 0).toString(2)).substr(-8));
相关文章:
- 如何从二进制int中获取百分比,每个位表示x%
- Javascript 将 int 值转换为八位字节流数组
- 如何上传文件不使用多部分编码?(可能使用八位字节或其他什么)
- node-js缓冲区翻转二进制位
- 如何在 Opera 中从 Javascript 访问 8 位二进制数据
- 读取 JavaScript 中包含 32 位浮点数的二进制文件
- Javascript 十进制到二进制 - 64 位
- 是否可以流式传输在 javascript 中生成的八位字节流
- 将 IP 地址拆分为八位字节,然后对每个八位字节进行一些数学运算
- 将base64中的图像发送到Web服务-'应用程序/八位字节流'不是预期的类型'text/xml
- 资源被解释为图像,但使用MIME类型的应用程序/八位字节流传输
- 从二进制字符串中读取可变长度的位
- 二进制表示中1位的计数数
- Javascript中强制二进制字符串的位长度
- 将数字转换为完整二进制八位
- 如何对二进制数进行按位运算
- 在angular js中按位和操作多个二进制数据
- 八进制数的位运算
- 如何将Javascript字符串转换为八位字节/字符数组
- 为什么这个代码有超过4个字符的3个八位字节