在 JavaScript 中,无需使用外部服务器请求即可完成将 Base64 字符串转换为 ArrayBuffer。此过程允许在浏览器本身内处理用户提供的 Base64 数据。
要实现此转换,可以采取以下步骤:
function base64ToArrayBuffer(base64) { const binaryString = atob(base64); // Convert Base64 to raw binary string const bytes = new Uint8Array(binaryString.length); // Create new Uint8Array for (let i = 0; i < binaryString.length; i++) { // Loop through each char in binary string bytes[i] = binaryString.charCodeAt(i); // Set byte at index to corresponding code } return bytes.buffer; // Return converted ArrayBuffer }
此函数首先解码 Base64使用本机 atob() 函数将其转换为原始二进制字符串。然后,它创建一个与二进制字符串长度相同的新 Uint8Array,并迭代二进制字符串中的每个字符。对于每个字符,提取其相应的代码点并将其分配给 Uint8Array 中的适当字节。最后,Uint8Array 的 buffer 属性(代表实际的 ArrayBuffer)作为结果返回。
演示其用法:
const base64String = "JVBERi0xLjQK"; const arrayBuffer = base64ToArrayBuffer(base64String);
在此示例中,base64String 是从 Base64 编码转换而来的使用 base64ToArrayBuffer() 函数转换为 arrayBuffer。然后可以根据需要在 JavaScript 中进一步处理此 ArrayBuffer。
以上是如何在 JavaScript 中将 Base64 字符串解码为 ArrayBuffer?的详细内容。更多信息请关注PHP中文网其他相关文章!