Heim  >  Artikel  >  Web-Frontend  >  Wie dekodiere ich Base64-Strings in ArrayBuffers in JavaScript?

Wie dekodiere ich Base64-Strings in ArrayBuffers in JavaScript?

Susan Sarandon
Susan SarandonOriginal
2024-11-17 20:06:02675Durchsuche

How to Decode Base64 Strings to ArrayBuffers in JavaScript?

Base64-Strings in ArrayBuffer in JavaScript dekodieren

In JavaScript kann die Konvertierung eines Base64-Strings in einen ArrayBuffer ohne externe Serveranforderungen erfolgen. Dieser Prozess ermöglicht die Verarbeitung der vom Benutzer bereitgestellten Base64-Daten innerhalb des Browsers selbst.

Um diese Konvertierung zu erreichen, können die folgenden Schritte unternommen werden:

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
}

Diese Funktion beginnt mit der Dekodierung von Base64 String mit der nativen Funktion atob(), die ihn in einen rohen Binärstring umwandelt. Anschließend wird ein neues Uint8Array mit derselben Länge wie die Binärzeichenfolge erstellt und jedes Zeichen in der Binärzeichenfolge durchlaufen. Für jedes Zeichen wird der entsprechende Codepunkt extrahiert und dem entsprechenden Byte im Uint8Array zugewiesen. Schließlich wird die Puffereigenschaft des Uint8Arrays, die den tatsächlichen ArrayBuffer darstellt, als Ergebnis zurückgegeben.

Um seine Verwendung zu demonstrieren:

const base64String = "JVBERi0xLjQK";
const arrayBuffer = base64ToArrayBuffer(base64String);

In diesem Beispiel wird der base64String aus der Base64-Kodierung konvertiert zu einem ArrayBuffer mit der Funktion base64ToArrayBuffer(). Dieser ArrayBuffer kann dann bei Bedarf innerhalb von JavaScript weiterverarbeitet werden.

Das obige ist der detaillierte Inhalt vonWie dekodiere ich Base64-Strings in ArrayBuffers in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn