由于我的javascript程序将使用FormData对象将文档上传到服务器,并且文档是base64格式的,因此我需要将base64字符串转换为字节数组,此链接看起来是正确的:
Convert base64 string to ArrayBuffer
function _base64ToArrayBuffer(base64) {
var binary_string = window.atob(base64);
var len = binary_string.length;
var bytes = new Uint8Array(len);
for (var i = 0; i < len; i++) {
bytes[i] = binary_string.charCodeAt(i);
}
return bytes.buffer;
}不幸的是,我的程序依赖于一个老版本的javascript,它没有定义Uint8Array。有没有人知道有没有实现我想要的东西的替代方法,或者有没有我可以使用的Uint8Array的替代方法?
谢谢
发布于 2021-02-06 01:17:01
不幸的是,您似乎无法访问TypedArrays和它们的缓冲区,因此可以使用一个简单的数组。
function _base64ToArray(base64) {
var binary_string = window.atob(base64);
var bytes = [];
for (var i = 0; i < binary_string.length; i++) {
bytes.push(binary_string.charCodeAt(i));
}
return bytes;
}使用数组不同于缓冲区,但我希望这能解决你的问题。
https://stackoverflow.com/questions/66067474
复制相似问题