W3cubDocs

/DOM

WritableStreamDefaultController.constructor

Draft
This page is not complete.

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

The WritableStreamDefaultController() constructor creates and returns a WritableStreamDefaultController() object instance.

Note: You wouldn't use this constructor manually — this is used during the construction of a WritableStream object.

Syntax

var writableStreamController = new WritableStreamDefaultController(stream, underlyingSink, size, highWaterMark);

Parameters

stream
The WritableStream to be controlled.
underlyingSink
An object containing methods and properties that define how the constructed stream instance will behave. See the WritableStream() constructor's parameter definitions for more information.
size
A method containing a parameter chunk — this indicates the size to use for each chunk, in bytes.
highWaterMark
A non-negative integer — this defines the total number of chunks that can be contained in the internal queue before backpressure is applied.

Return value

An instance of the WritableStreamDefaultController object.

Exceptions

TypeError
The supplied stream parameter is not a WritableStream, or it already has an associated controller.

Examples

const writableStream = new WritableStream({
  start(controller) {
    // do stuff with controller

    // error stream if necessary
    controller.error('My error is broken');
  },
  write(chunk, controller) {
    ...
  },
  close(controller) {
    ...
  },
  abort(err) {
    ...
  }
});

Specifications

Specification Status Comment
Streams
The definition of 'WritableStreamDefaultController()' in that specification.
Living Standard Initial definition.

Browser compatibilityUpdate compatibility data on GitHub

Desktop
Chrome Edge Firefox Internet Explorer Opera Safari
Basic support ? ? ? ? ? ?
Mobile
Android webview Chrome for Android Edge Mobile Firefox for Android Opera for Android iOS Safari Samsung Internet
Basic support ? ? ? ? ? ? ?

© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WritableStreamDefaultController/WritableStreamDefaultController