Node js 10进制转16进制 固定4个字节大小的转换

需求:

要求把10进制转换成固定4个字节大小的16进制数。

例子:

1000  => 0x000003e8

11223344 => 0x00ab4130


function toHex(num){
  var charArray = ['a','b','c','d','e','f']
  var strArr = ['0','x','0','0','0','0','0','0','0','0']
  var i = 9;
  while(num > 15){
    var yushu = num % 16;  
    if(yushu >= 10){
      var index = yushu % 10;
      strArr [i--] = charArray[index];
    }else{
      strArr[i--] = yushu.toString();
    } 
    num =  Math.floor(num/16);
  }
  
  if(num != 0){
    if(num >= 10){
      var index = num % 10;
      strArr [i--] = charArray[index];
    }else{
      strArr[i--] = num.toString();
    } 
  }
  var hex = strArr.join('');
  console.log(hex);
  return hex;
}

猜你喜欢

转载自blog.csdn.net/qq_36838406/article/details/120412277
今日推荐