搜索

首页  >  问答  >  正文

javascript - js如何优雅的处理低位在前,高位在后的数据?

如题

在和硬件设备的交互过程中,收到硬件传递回来的一个16进制的数字,低位在前,高位在后,如何优雅的解析为正确的10进制数据呢

//举例 16进制的一个数据
var num=0x12345678
//因为低位在前,高位在后,正确解析后是
num=0x78563412
//转换成10进制是
num=2018915346

目前的处理方式:
把num按照长度切割,然后通过for循环调换前后顺序,最后parseInt转换为10进制,实现了目的,直觉这个方式肯定不合理,求更标准的做法思路

滿天的星座滿天的星座2749 天前558

全部回复(1)我来回复

  • 迷茫

    迷茫2017-05-19 10:33:47

    上面那种有问题,根据楼主的意思,正确的写法如下:

    function translate(num){
      return parseInt('0x' + num.match(/\d{2}/g).reverse().join(''), 16);
    }
    translate('0x12345678'); //2018915346

    回复
    0
  • 取消回复