Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。
ReadableStream.from() は静的メソッドで、指定された反復可能または非同期反復可能オブジェクトから ReadableStream を返します。
このメソッドは、配列、設定、プロミスの配列、非同期ジェネレーター、ReadableStreams、Node.js の readable ストリームなど、反復可能オブジェクトや非同期反復可能オブジェクトを読み取り可能なストリームとしてラップするために使用することができます。
ReadableStream です。
渡された引数が反復可能オブジェクトまたは非同期反復可能オブジェクトではない(@@iterator または @@asyncIterator メソッドを定義していない)場合に発生します。 また、反復処理中に、次の反復処理の結果がオブジェクトでない場合、またはオブジェクトに解決されないプロミスである場合にも発生します。
このライブ例では、非同期イテレーターを ReadableStream に変換し、このストリームをどのように使用するかを示します。
HTMLはログ出力に用いる単一の要素 <pre> で構成されています。
例えば、このコードでは log() 関数を作成してログ HTML 要素に出力しています。
そして、静的メソッドが対応しているかどうかを調べ、対応していない場合はその結果をログ出力します。
非同期反復可能オブジェクトは、 3 回呼び出されると 1、2、3 の値を返す匿名ジェネレーター関数です。 これを ReadableStream.from() に渡して ReadableStream を作成します。
読み取り可能なストリームの使用では、ストリームを利用する何通りかの方法を示しています。 以下のコードは for ...await ループを使用しています。このメソッドは最もシンプルだからです。 ループのそれぞれの反復処理は、ストリームから現在のチャンクをログ出力します。
ストリームを消費したときの出力は下記のように表示されます(ReadableStream.from() に対応している場合)。
この例は Array を ReadableStream に変換する方法を示しています。
反復可能オブジェクトは単なる文字列の配列で、 ReadableStream.from() に渡して ReadableStream を作成します。
前回の例のログ出力とストリームの利用と同じ手法を使用しているので、ここでは表示させません。
出力結果は次の通りです。
| Streams # rs-from |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2023年9月24日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.