Menukar rentetan yang dikodkan base64 kepada objek Blob ialah tugas biasa dalam JavaScript apabila berurusan dengan data binari. Ini boleh berguna untuk memaparkan data sebagai imej atau memuat turunnya ke peranti pengguna.
Langkah pertama ialah menyahkod rentetan base64. Ini boleh dicapai menggunakan fungsi atob, yang menukar rentetan berkod base64 kepada rentetan baharu yang mengandungi data perduaan asal.
const byteCharacters = atob(b64Data);
Fungsi atob akan menghasilkan rentetan aksara, setiap satu mewakili bait. Untuk menukar aksara ini kepada bait sebenar, kita boleh menggunakan kaedah .charCodeAt untuk mendapatkan mata kod aksara. Titik kod ini akan menjadi nilai bait.
const byteNumbers = new Array(byteCharacters.length); for (let i = 0; i < byteCharacters.length; i++) { byteNumbers[i] = byteCharacters.charCodeAt(i); }
Seterusnya, kita boleh mencipta Uint8Array dengan menghantar tatasusunan byteNumbers kepada pembina.
const byteArray = new Uint8Array(byteNumbers);
Akhir sekali, kita boleh mencipta objek Blob dengan membungkus byteArray dalam tatasusunan dan menghantarnya kepada pembina Blob.
const blob = new Blob([byteArray], {type: contentType});
Berikut ialah contoh cara mencipta Blob daripada rentetan base64:
const contentType = 'image/png'; const b64Data = 'iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=='; const blob = new Blob([atob(b64Data)], {type: contentType});
Setelah anda mencipta Blob, anda boleh menggunakannya untuk memaparkan data kepada pengguna atau memuat turunnya ke peranti mereka. Anda boleh menggunakan fungsi URL.createObjectURL untuk membuat URL untuk Blob, yang kemudiannya boleh anda tetapkan sebagai src imej atau sebagai href pautan muat turun.
Atas ialah kandungan terperinci Bagaimana untuk Membuat Gumpalan JavaScript daripada Rentetan Base64?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!