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

View in English Always switch to English

Window: setImmediate() Methode

Deprecated

Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.

Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.

Diese Methode wird verwendet, um lang andauernde Operationen aufzuteilen und eine Callback-Funktion auszuführen, nachdem der Browser andere Operationen wie Ereignisse und Anzeigeaktualisierungen abgeschlossen hat.

Syntax

js
setImmediate(func)
setImmediate(func, param1)
setImmediate(func, param1, param2)
setImmediate(func, param1, param2, /* …, */ paramN)

Parameter

func

Die Funktion, die Sie aufrufen möchten.

param1, …, paramN

Alle Parameter werden direkt an Ihre Funktion übergeben.

Rückgabewert

Die ID des Immediate, die später mit window.clearImmediate verwendet werden kann.

Hinweise

Die Methode clearImmediate() kann verwendet werden, um die Immediate-Aktionen zu löschen, ähnlich wie clearTimeout() für setTimeout().

Diese Methode kann anstelle der Methode setTimeout(fn, 0) verwendet werden, um schwere Operationen auszuführen.

Die Funktion kann auf verschiedene Weisen emuliert werden:

  • postMessage() kann verwendet werden, um eine unmittelbare, aber erzwungene Callback-Funktion auszulösen.
  • MessageChannel kann zuverlässig innerhalb von Web Workers verwendet werden, während die Semantik von postMessage bedeutet, dass es dort nicht verwendet werden kann.
  • setTimeout(fn, 0) kann potenziell verwendet werden, jedoch da es für Timer, die mehr als 5 Ebenen tief verschachtelt sind, auf 4ms geklammert ist laut dem HTML-Standard, ist es kein geeignetes Polyfill für die natürliche Unmittelbarkeit von setImmediate.

Alle diese Techniken sind in einem robusten setImmediate Polyfill integriert.

Spezifikationen

Nicht Teil aktueller Spezifikationen. Die Efficient Script Yielding Spezifikation wird nicht weiter bearbeitet.

Browser-Kompatibilität

Siehe auch