Bagaimana untuk Menukar Rentetan Base64 kepada ArrayBuffers dalam JavaScript Asli?

Mary-Kate Olsen
Lepaskan: 2024-11-24 03:47:21
asal
459 orang telah melayarinya

How to Convert Base64 Strings to ArrayBuffers in Native JavaScript?

Menukar Rentetan Base64 kepada ArrayBuffers dengan Native JavaScript

Dalam pelbagai senario, seperti bekerja dengan data daripada e-mel atau sumber lain yang disediakan pengguna, ia menjadi perlu untuk menukar rentetan berkod base64 kepada ArrayBuffer. JavaScript menawarkan cara yang mudah untuk mencapai penukaran ini tanpa memerlukan komunikasi pelayan luaran.

Kaedah Penukaran Asli Menggunakan atob dan Uint8Array

Fungsi berikut menukar rentetan base64 dengan berkesan kepada ArrayBuffer:

function base64ToArrayBuffer(base64) {
    // Decode the base64 string into a binary string
    var binaryString = atob(base64);

    // Create a new Uint8Array with the length of the binary string
    var bytes = new Uint8Array(binaryString.length);

    // Iterate through each character of the binary string and convert it to a byte
    for (var i = 0; i < binaryString.length; i++) {
        bytes[i] = binaryString.charCodeAt(i);
    }

    // Return the ArrayBuffer containing the converted bytes
    return bytes.buffer;
}
Salin selepas log masuk

Dalam ini fungsi:

  • Kaedah atob() menyahkod rentetan base64 menjadi rentetan binari.
  • Uint8Array dicipta untuk menyimpan data binari.
  • Setiap aksara dalam rentetan binari ditukar kepada bait yang sepadan menggunakan charCodeAt().
  • Sifat penimbal bagi Uint8Array mengembalikan ArrayBuffer.

Dengan menggunakan kaedah penukaran asli ini, anda boleh menukar input pengguna yang dikodkan base64 dengan mudah kepada ArrayBuffers untuk pemprosesan selanjutnya.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan Base64 kepada ArrayBuffers dalam JavaScript Asli?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan