在vue中16进制4字节数组怎么编码成base64?

const byteArr = ['00','00','01',2C]; //也有可能是2字节:['01','2C'] 

const result = 'AAABLA==' //期待结果

如上所示,可能是4字节的16进制数组,也可能是2字节的,需要编码为base64,请教下大神们该怎么操作

小弟在这里先谢谢各位大神的解答,感激不尽!!

补充一下:
大神们可以参考下这个网站:https://the-x.cn/base64/
00 00 01 2C要能编码为AAABLA==(见下图↓)

同样的,AAABLA==也要能解码为00 00 01 2C(见下图↓),但是我们做编码就行了,只是说我们编码出来的base64也需要能解码为原本字节才行

阅读 2.8k
2 个回答
const byteArr = ['00', '00', '01', '2C'];
const bytes = new Uint8Array(byteArr.map(s => parseInt(s, 16)));
const blob = new Blob([bytes]);
const result = await(() => {
    return new Promise(resolve => {
        var reader = new FileReader();
        reader.onload = () => {
            const i = reader.result.indexOf(";base64,");
            resolve(reader.result.substring(i + 8));
        };
        reader.readAsDataURL(blob);
    });
})();
console.log(result);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏