1. ホーム
  2. javascript

[解決済み] BlobからArrayBufferへ移行する方法

2022-07-25 02:03:39

質問

Blobの勉強をしていて、ArrayBufferがある場合、以下のように簡単にBlobに変換できることに気づきました。

var dataView = new DataView(arrayBuffer);
var blob = new Blob([dataView], { type: mimeString });

今の疑問は、BlobからArrayBufferに移行することは可能なのか?

どのように解決するのですか?

この Response API は (不変の) Blob を消費し、そこからいくつかの方法でデータを取得することができます。その OP が要求したのは ArrayBuffer のみで、以下はそのデモです。

var blob = GetABlobSomehow();

// NOTE: you will need to wrap this up in a async block first.
/* Use the await keyword to wait for the Promise to resolve */
await new Response(blob).arrayBuffer();   //=> <ArrayBuffer>

の代わりに、これを使うこともできます。

new Response(blob).arrayBuffer()
.then(/* <function> */);


注意 これは API は、古い ( 古い ) ブラウザと互換性がないので ブラウザ互換性テーブル を追加してください;)