ByteLengthQueuingStrategy

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The ByteLengthQueuingStrategy interface of the the Streams API provides a built-in byte length queuing strategy that can be used when constructing streams.

Constructor

ByteLengthQueuingStrategy()
Creates a new ByteLengthQueuingStrategy object instance.

Properties

None.

Methods

ByteLengthQueuingStrategy.size()
Returns the given chunk’s byteLength property.

Examples

const queuingStrategy = new ByteLengthQueuingStrategy({ highWaterMark: 1 });

const readableStream = new ReadableStream({
  start(controller) {
    ...
  },
  pull(controller) {
    ...
  },
  cancel(err) {
    console.log("stream error:", err);
  }
}, queuingStrategy);

var size = queueingStrategy.size(chunk);

Specifications

Specification Status Comment
Streams
The definition of 'ByteLengthQueuingStrategy' in that specification.
Living Standard Initial definition.

Browser Compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support5916571 No46 ?
ByteLengthQueuingStrategy() constructor5916571 No46 ?
size5916571 No46 ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support59591657146 ?7.0
ByteLengthQueuingStrategy() constructor59591657146 ?7.0
size59591657146 ?7.0

1. From version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true). To change preferences in Firefox, visit about:config.

Document Tags and Contributors

Contributors to this page: fscholz, chrisdavidmills, ricea
Last updated by: fscholz,