Dalam JavaScript, menukar rentetan Base64 kepada ArrayBuffer boleh dicapai tanpa menggunakan permintaan pelayan luaran. Proses ini membolehkan pemprosesan data Base64 yang disediakan pengguna dalam penyemak imbas itu sendiri.
Untuk mencapai penukaran ini, langkah berikut boleh diambil:
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 }
Fungsi ini bermula dengan menyahkod Base64 rentetan menggunakan fungsi atob() asli, yang mengubahnya menjadi rentetan binari mentah. Ia kemudiannya mencipta Uint8Array baharu dengan panjang yang sama dengan rentetan binari dan berulang pada setiap aksara dalam rentetan binari. Untuk setiap aksara, titik kod yang sepadan diekstrak dan diberikan kepada Byte yang sesuai dalam Uint8Array. Akhirnya, sifat penimbal Uint8Array, yang mewakili ArrayBuffer sebenar, dikembalikan sebagai hasilnya.
Untuk menunjukkan penggunaannya:
const base64String = "JVBERi0xLjQK"; const arrayBuffer = base64ToArrayBuffer(base64String);
Dalam contoh ini, base64String ditukar daripada pengekodan Base64 kepada arrayBuffer menggunakan fungsi base64ToArrayBuffer(). ArrayBuffer ini kemudiannya boleh diproses selanjutnya mengikut keperluan dalam JavaScript.
Atas ialah kandungan terperinci Bagaimana untuk Menyahkod String Base64 ke ArrayBuffers dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!