Newly available 主要ブラウザで対応済みだが、古いバージョンでは未対応の場合がある。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
89
89
102
26.4
89
26.4

byobRequest は ReadableByteStreamController インターフェイスの読み取り専用プロパティで、現在の BYOB リクエストを返します。保留中のリクエストがない場合は null を返します。

89
89
102
26.4
89
26.4

close() は ReadableByteStreamController インターフェイスのメソッドで、関連するストリームを閉じます。

89
89
102
26.4
89
26.4

desiredSize は ReadableByteStreamController インターフェイスの読み取り専用プロパティで、ストリームの内部キューを満たすために必要な「希望サイズ」を返します。

89
89
102
26.4
89
26.4

enqueue() は ReadableByteStreamController で、指定されたチャンクを、関連する読み取り可能なバイトストリームのキューに入れます(チャンクはストリーム内部のキューにコピーされます)。

89
89
102
26.4
89
26.4

error() は ReadableByteStreamController インターフェイスのメソッドで、関連するストリームとの今後のやり取りを、指定した理由でエラーとします。

89
89
102
26.4
89
26.4

ReadableStreamBYOBReader はストリーム API のインターフェイスで、 ReadableStream 用のリーダーを定義します。このリーダーは、基盤となるバイトソースからのゼロコピー読み込みに対応しています。 ファイルなど、データがバイト列の「無名」シーケンスとして配信される基盤から効率的にコピーするために使用します。

89
89
102
26.4
89
26.4

cancel() は ReadableStreamBYOBReader インターフェイスのメソッドで、ストリームがキャンセルされたときに解決するプロミス (Promise) を返します。 このメソッドを呼び出すと、コンシューマーがストリームへの関心を失ったことを示します。

89
89
102
26.4
89
26.4

closed は ReadableStreamBYOBReader インターフェイスの読み取り専用プロパティで、ストリームが閉じられた場合、またはリーダーのロックが解除された場合に履行され、ストリームがエラーの場合は拒否されるプロミスを返します。

89
89
102
26.4
89
26.4

read() は ReadableStreamBYOBReader インターフェイスのメソッドで、ユーザーが提供したバッファー上のビューに、関連付けられた読み取り可能なバイトストリームからデータを読み込むために使用します。 データに対するリクエストは、データを説明しているものがあれば、ストリームの内部キューから満たされます。 ストリームキューが空の場合、リクエストは、基盤のバイトソースからのゼロコピー移譲として供給されるかもしれません。

89
89
102
26.4
89
26.4
read (options min parameter)

`options.min` パラメータ

140
140
134
140

ReadableStreamBYOBReader() コンストラクターは、ReadableStreamBYOBReader オブジェクトのインスタンスを作成して返します。

89
89
102
26.4
89
26.4

releaseLock() は ReadableStreamBYOBReader インターフェイスのメソッドで、ストリーム上のリーダーのロックを解除します。 ロックを解除すると、リーダーはアクティブではなくなります。

89
89
102
26.4
89
26.4
releaseLock (reject pending read request)

`releaseLock()` は保留中の読み取りリクエストを拒否します

105
105
102
105

ReadableStreamBYOBRequest はストリーム API のインターフェイスで、は、コンシューマーにゼロコピーで移譲される(ストリーム内部のキューをバイパスする)基盤からのデータの「プルリクエスト」を表します。

89
89
102
26.4
89
26.4

respond() は ReadableStreamBYOBRequest インターフェイスのメソッドで、 ReadableStreamBYOBRequest.view に指定したバイト数が書き込まれたことを、関連する読み取り可能なバイトストリームに通知するために用いられます。

89
89
102
26.4
89
26.4

respondWithNewView() は ReadableStreamBYOBRequest インターフェイスのメソッドで、 ReadableStreamBYOBRequest.view の代わりに、関連付けられた読み取り可能なバイトストリームの消費者が書き込むべき新しいビューを指定します。

89
89
102
26.4
89
26.4

view は ReadableStreamBYOBRequest インターフェイスのゲッタープロパティで、現在のビューを返します。

89
89
102
26.4
89
26.4
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)
注釈 1件
実装メモ
  • バージョン105以前では、`releaseLock()`はリジェクトされるのではなく、例外をスローします。
注釈 1件
実装メモ
  • バージョン105以前では、`releaseLock()`はリジェクトされるのではなく、例外をスローします。
注釈 1件
実装メモ
  • バージョン105以前では、`releaseLock()`はリジェクトされるのではなく、例外をスローします。

実務での使いどころ

  • Readable byte streams の活用

    ReadableByteStreamController はストリーム API のインターフェイスで、読み取り可能なバイトストリームコントローラーを表します。

注意点

  • 古いブラウザでは対応していない場合がある。

実装メモ

  • 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。