我正在研究Blob,我注意到当你有一个ArrayBuffer时,你可以很容易地将它转换成一个Blob,如下所示:
var dataView = new DataView(arrayBuffer);
var blob = new Blob([dataView], { type: mimeString });
我现在的问题是,有没有可能从Blob转换成ArrayBuffer?
发布于 2018-08-09 11:00:22
或者您可以使用fetch API
fetch(URL.createObjectURL(myBlob)).then(res => res.arrayBuffer())
我不知道性能差异是什么,这也会在DevTools的网络选项卡上显示出来。
发布于 2020-08-25 04:28:44
await blob.arrayBuffer()
很好。
问题是当需要iOS / Safari支持时。对于该 ,需要使用this
Blob.prototype.arrayBuffer ??=function(){ return new Response(this).arrayBuffer() }
发布于 2020-02-13 14:51:54
有一个now (Chrome & FF 69+),一个Blob.prototype.arrayBuffer()方法,它将返回一个Promise resolving,其中包含一个表示Blob数据的ArrayBuffer。
(async () => {
const blob = new Blob(['hello']);
const buf = await blob.arrayBuffer();
console.log( buf.byteLength ); // 5
})();
https://stackoverflow.com/questions/15341912
复制相似问题