Masalah:
Anda mahu menukar rentetan berkod base64 menjadi ArrayBuffer, secara khusus bekerja dengan input pengguna daripada e-mel yang tidak tersedia pada pemuatan halaman. Matlamat anda adalah untuk melaksanakan penukaran ini tanpa interaksi pelayan luaran.
Penyelesaian:
Untuk mencapai penukaran ini secara asli dalam JavaScript, anda boleh memanfaatkan langkah berikut:
Nyahkod Base64 Rentetan:
Gunakan fungsi atob() untuk menyahkod rentetan base64 menjadi rentetan binari.
Buat ArrayBuffer:
Buat Uint8Array baharu dengan panjang yang sama dengan rentetan binari panjang.
Tukar kepada ArrayBuffer:
Lelaran melalui setiap aksara dalam rentetan binari, tukarkannya kepada titik kod Unikod dan simpannya dalam ArrayBuffer.
Contoh Pelaksanaan:
Di bawah ialah fungsi JavaScript yang melaksanakan penukaran base64 kepada ArrayBuffer:
function base64ToArrayBuffer(base64) { var binaryString = atob(base64); var bytes = new Uint8Array(binaryString.length); for (var i = 0; i < binaryString.length; i++) { bytes[i] = binaryString.charCodeAt(i); } return bytes.buffer; }
Penggunaan:
Anda boleh menggunakan fungsi ini untuk menukar rentetan berkod base64 ke dalam ArrayBuffer:
var base64String = "yourBase64StringHere"; var arrayBuffer = base64ToArrayBuffer(base64String);
Kini anda telah berjaya menukar rentetan base64 kepada ArrayBuffer, membolehkan anda bekerja dengan data binari tanpa panggilan pelayan luaran.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan Base64 kepada ArrayBuffer dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!