Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. Eingebaute Standardobjekte
  5. Symbol
  6. asyncIterator

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

View in EnglishAlways switch to English

Symbol.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⁩.

Die statische DateneigenschaftSymbol.asyncIterator repräsentiert daswohlbekannte SymbolSymbol.asyncIterator. Dasasynchrone Iterationsprotokoll sucht dieses Symbol für die Methode, die den asynchronen Iterator für ein Objekt zurückgibt. Damit ein Objekt asynchron iterierbar ist, muss es einen[Symbol.asyncIterator]-Schlüssel haben.

Probieren Sie es aus

const delayedResponses = {  delays: [500, 1300, 3500],  wait(delay) {    return new Promise((resolve) => {      setTimeout(resolve, delay);    });  },  async *[Symbol.asyncIterator]() {    for (const delay of this.delays) {      await this.wait(delay);      yield `Delayed response for ${delay} milliseconds`;    }  },};(async () => {  for await (const response of delayedResponses) {    console.log(response);  }})();// Expected output: "Delayed response for 500 milliseconds"// Expected output: "Delayed response for 1300 milliseconds"// Expected output: "Delayed response for 3500 milliseconds"

Wert

Das wohlbekannte SymbolSymbol.asyncIterator.

Eigenschaften vonSymbol.asyncIterator
Schreibbarnein
Aufzählbarnein
Konfigurierbarnein

Beispiele

Benutzerdefinierte asynchrone Iterables

Sie können Ihr eigenes asynchrones Iterable definieren, indem Sie die Eigenschaft[Symbol.asyncIterator]() auf einem Objekt setzen.

js
const myAsyncIterable = {  async *[Symbol.asyncIterator]() {    yield "hello";    yield "async";    yield "iteration!";  },};(async () => {  for await (const x of myAsyncIterable) {    console.log(x);  }})();// Logs:// "hello"// "async"// "iteration!"

Beim Erstellen einer API bedenken Sie, dass asynchrone Iterables dazu gedacht sind, etwasIterierbares darzustellen – wie einen Datenstrom oder eine Liste –, und nicht in den meisten Situationen Callbacks und Ereignisse vollständig zu ersetzen.

Eingebaute asynchrone Iterables

Es gibt kein Objekt in der Kern-JavaScript-Sprache, das asynchron iterierbar ist. Einige Web-APIs, wie zum BeispielReadableStream, haben dieSymbol.asyncIterator-Methode standardmäßig gesetzt.

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-symbol.asynciterator

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