Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. Eingebaute Standardobjekte
  5. AsyncIterator

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

AsyncIterator

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Januar 2020⁩.

* Some parts of this feature may have varying levels of support.

EinAsyncIterator-Objekt ist ein Objekt, das demasync iterator protocol entspricht, indem es einenext()-Methode bereitstellt, die ein Promise zurückgibt, das ein Iterator-Resultat-Objekt erfüllt. DasAsyncIterator.prototype-Objekt ist ein verstecktes globales Objekt, von dem alle eingebauten async Iteratoren erben. Es bietet eine[Symbol.asyncIterator]()-Methode, die das async Iterator-Objekt selbst zurückgibt und den async Iterator somit auchasync iterable macht.

Beachten Sie, dassAsyncIteratorkein globales Objekt ist, obwohl es dies in Zukunft mit demasync iterator helpers proposal sein wird. DasAsyncIterator.prototype-Objekt, das von allen eingebauten async Iteratoren geteilt wird, kann mit dem folgenden Code erhalten werden:

js
const AsyncIteratorPrototype = Object.getPrototypeOf(  Object.getPrototypeOf(Object.getPrototypeOf((async function* () {})())),);

Beschreibung

Derzeit ist der einzige eingebaute JavaScript async Iterator dasAsyncGenerator-Objekt, das vonasync generator functions zurückgegeben wird. Es gibt einige andere eingebaute async Iteratoren in Web-APIs, wie z.B. einenReadableStream.

Jeder dieser async Iteratoren hat ein eigenes Prototyp-Objekt, das dienext()-Methode definiert, die vom jeweiligen async Iterator verwendet wird. Alle diese Prototyp-Objekte erben vonAsyncIterator.prototype, das eine[Symbol.asyncIterator]()-Methode bietet, die das async Iterator-Objekt selbst zurückgibt und den async Iterator somit auchasync iterable macht.

Hinweis:AsyncIterator.prototype implementiert nicht[Symbol.iterator](), sodass async Iteratoren standardmäßig nichtsync iterable sind.

Instanzmethoden

AsyncIterator.prototype[Symbol.asyncDispose]()

Ruft diereturn()-Methode vonthis auf und wartet auf sie, falls sie existiert. Dies implementiert dasasync disposable protocol und ermöglicht es, entsorgt zu werden, wenn es mitawait using verwendet wird.

AsyncIterator.prototype[Symbol.asyncIterator]()

Gibt das async Iterator-Objekt selbst zurück. Dadurch können async Iterator-Objekte auch async iterable sein.

Beispiele

Verwendung eines async Iterators als async iterable

Alle eingebauten async Iteratoren sind auch async iterable, sodass Sie sie in einerfor await...of-Schleife verwenden können:

js
const asyncIterator = (async function* () {  yield 1;  yield 2;  yield 3;})();(async () => {  for await (const value of asyncIterator) {    console.log(value);  }})();// Logs: 1, 2, 3

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-asynciteratorprototype

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp