The arrayBuffer() method in the Blob interface returns a Promise that resolves with the contents of the blob as binary data contained in an ArrayBuffer.


var bufferPromise = blob.arrayBuffer();

blob.arrayBuffer().then(buffer => /* process the ArrayBuffer */);

var buffer = await blob.arrayBuffer();




A promise that resolves with an ArrayBuffer that contains the blob's data in binary form.


While this method doesn't throw exceptions, it may reject the promise. This can happen, for example, if the reader used to fetch the blob's data throws an exception. Any exceptions thrown while getting the data will be converted into rejections.

Usage notes

While similar to the FileReader.readAsArrayBuffer() method, arrayBuffer() returns a promise rather than being an event-based API, as is the case with the FileReader interface's method.


Specification Status Comment
File API
The definition of 'Blob.arrayBuffer()' in that specification.
Working Draft

Browser compatibility

ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
arrayBuffer()Chrome Full support 76Edge Full support 79Firefox Full support 69IE No support NoOpera No support NoSafari No support NoWebView Android Full support 76Chrome Android Full support 76Firefox Android No support NoOpera Android Full support 54Safari iOS No support NoSamsung Internet Android Full support 12.0


Full support
Full support
No support
No support

See also