The Blob interface's stream() method returns a ReadableStream which upon reading returns the data contained within the Blob.


var stream =;




A ReadableStream which, upon reading, returns the contents of the Blob.

Usage notes

With stream() and the returned ReadableStream, you gain several interesting capabilities:

  • Call getReader() on the returned stream to get an object to use to read the data from the blob using methods such as the ReadableStreamDefaultReader interface's read() method.
  • Call the returned stream's pipeTo() method to pipe the blob's data to a writable stream.
  • Call the returned stream's tee() method to tee the readable stream. This returns an array containing two new ReadableStream objects, each of which returns the contents of the Blob.
  • Call the returned stream's pipeThrough() method to pipe the stream through a TransformStream or any other readable and writable pair.


Specification Status Comment
File API
The definition of '' in that specification.
Working Draft

Browser compatibility

ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
stream()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