ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で Base64 文字列を ArrayBuffers にデコードするにはどうすればよいですか?

JavaScript で Base64 文字列を ArrayBuffers にデコードするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-17 20:06:02675ブラウズ

How to Decode Base64 Strings to ArrayBuffers in JavaScript?

JavaScript で Base64 文字列を ArrayBuffer にデコードする

JavaScript では、外部サーバー リクエストを使用せずに Base64 文字列を ArrayBuffer に変換できます。このプロセスにより、ユーザーが提供した Base64 データをブラウザ自体内で処理できるようになります。

この変換を実現するには、次の手順を実行できます。

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
}

この関数は、Base64 をデコードすることから始まります。ネイティブの atob() 関数を使用して文字列を取得し、生のバイナリ文字列に変換します。次に、バイナリ文字列と同じ長さの新しい Uint8Array を作成し、バイナリ文字列内の各文字を反復処理します。文字ごとに、対応するコード ポイントが抽出され、Uint8Array 内の適切なバイトに割り当てられます。最後に、実際の ArrayBuffer を表す Uint8Array のバッファ プロパティが結果として返されます。

その使用法を説明するには:

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

この例では、base64String が Base64 エンコーディングから変換されます。 Base64ToArrayBuffer() 関数を使用して arrayBuffer に変換します。この ArrayBuffer は、必要に応じて JavaScript 内でさらに処理できます。

以上がJavaScript で Base64 文字列を ArrayBuffers にデコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。