ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で ArrayBuffer を Base64 文字列に効率的に変換するにはどうすればよいですか?
ArrayBuffer を Base64 に変換するためのネイティブ実装
ArrayBuffer を Base64 でエンコードされた文字列に変換することは、マルチパートなどのさまざまなユースケースにとって重要です。 POST リクエスト。これを効率的に達成するために、開発者はネイティブ ソリューションを求めることがよくあります。
ソリューション
ArrayBuffer を Base64 文字列に変換する効率的なネイティブ関数を次に示します。
function _arrayBufferToBase64(buffer) { var binary = ''; var bytes = new Uint8Array(buffer); var len = bytes.byteLength; for (var i = 0; i < len; i++) { binary += String.fromCharCode(bytes[i]); } return window.btoa(binary); }
この関数は ArrayBuffer からバイナリ文字列を作成し、ネイティブ btoa 関数を使用してbase64 string.
代替アプローチ
上記のソリューションはネイティブですが、非ネイティブ実装の方がパフォーマンスが向上する可能性があります。このような実装の 1 つは、https://gist.github.com/958841 にあります。
パフォーマンス ベンチマーク
公正な比較については、次のパフォーマンスを参照してください。ベンチマーク:
以上がJavaScript で ArrayBuffer を Base64 文字列に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。