We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

The Blob.slice() method is used to create a new Blob object containing the data in the specified range of bytes of the source Blob.

Note: Be aware that the slice() method has vendor prefixes on some browsers and versions: blob.mozSlice() for Firefox 12 and earlier and blob.webkitSlice() in Safari. An old version of the slice() method, without vendor prefixes, had different semantics, and is obsolete.

Syntax

var blob = instanceOfBlob.slice([start [, end [, contentType]]]);

Parameters

start Optional
An index into the Blob indicating the first byte to include in the new Blob. If you specify a negative value, it's treated as an offset from the end of the string toward the beginning. For example, -10 would be the 10th from last byte in the Blob. The default value is 0. If you specify a value for start that is larger than the size of the source Blob, the returned Blob has size 0 and contains no data.
end Optional
An index into the Blob indicating the first byte that will *not* be included in the new Blob (i.e. the byte exactly at this index is not included). If you specify a negative value, it's treated as an offset from the end of the string toward the beginning. For example, -10 would be the 10th from last byte in the Blob. The default value is size.
contentType Optional
The content type to assign to the new Blob; this will be the value of its type property. The default value is an empty string.

Return value

A new Blob object containing the specified data from the source Blob.

Specifications

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

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support

21

5 — 21 webkit

12

131

5 — 13 moz

10125.1 webkit
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support ? ? Yes14 ? ? ?

1. Prior to Gecko 12.0 (Firefox 12.0 / Thunderbird 12.0 / SeaMonkey 2.9), there was a bug that affected the behavior of Blob.slice(); it did not work for start and end positions outside the range of signed 64-bit values; it has now been fixed to support unsigned 64-bit values.

See also

Document Tags and Contributors

Contributors to this page: fscholz, erikadoyle, Sebastianz, Jeremie, Bent, JorisW, shakyjake, gf3
Last updated by: fscholz,