我有十六进制(基数16)数字的测试数组
var numbers = ["01","02","a1"];
并使用
将它们转换为int(基数10)var num = parseInt(temp.join(''), 16);
其中temp是数字数组中的数字。
我提取像
这样的字节( num >> (8*index_byte) & 0xFF)
但是我没有得到像“03”这样的价值,问题是我只得到3.如何得到像“01”而不是1或“02”而不是2?
答案 0 :(得分:1)
03
3
。
您唯一的选择是自己填充数字:
var byte = "0" + (num >> (8 * index_byte) & 0xFF);
答案 1 :(得分:1)
类似的东西:
num = 1;
if (String(num).length < 2)
{
num = "0" + num;
}
答案 2 :(得分:1)
您可以使用jsxt中的String.js
。
var fnumber = '%02d'.sprintf( num>>(8*index_byte) & 0xFF );