| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/API/Window/queueMicrotask | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2020 browserbergreifend verfgbar.
Die queueMicrotask()-Methode des Window-Interfaces
reiht einen Mikrotask ein, der zu einem sicheren Zeitpunkt ausgefhrt wird, bevor die Kontrolle zur Ereignisschleife des Browsers zurckkehrt.
Der Mikrotask ist eine kurze Funktion, die nach Abschluss der aktuellen Aufgabe ausgefhrt wird und wenn kein anderer Code darauf wartet, ausgefhrt zu werden, bevor die Kontrolle des Ausfhrungskontextes an die Ereignisschleife des Browsers zurckgegeben wird.
Dies ermglicht es Ihrem Code, ohne Beeintrchtigung anderer mglicherweise hher priorisierter ausstehender Codes ausgefhrt zu werden, aber bevor der Browser die Kontrolle ber den Ausfhrungskontext zurckerlangt, abhngig von der Arbeit, die Sie abschlieen mssen. Sie knnen mehr darber erfahren, wie Sie Mikrotasks nutzen und warum Sie dies tun knnten, in unserem Mikrotask-Leitfaden.
Die Bedeutung von Mikrotasks liegt in der Fhigkeit, Aufgaben asynchron aber in einer bestimmten Reihenfolge auszufhren. Weitere Details finden Sie unter Verwendung von Mikrotasks in JavaScript mit queueMicrotask().
Mikrotasks sind besonders ntzlich fr Bibliotheken und Frameworks, die abschlieende Bereinigung oder andere Aufgaben direkt vor dem Rendern ausfhren mssen.
queueMicrotask(callback)
callbackEine Function, die ausgefhrt wird, wenn die Browser-Engine feststellt, dass es sicher ist, Ihren Code aufzurufen. Eingereihte Mikrotasks werden ausgefhrt, nachdem alle ausstehenden Aufgaben abgeschlossen sind, aber bevor die Kontrolle an die Ereignisschleife des Browsers bergeben wird.
Keiner (undefined).
queueMicrotask(() => {
// function contents here
});
Entnommen aus der queueMicrotask-Spezifikation:
MyElement.prototype.loadData = function (url) {
if (this._cache[url]) {
queueMicrotask(() => {
this._setData(this._cache[url]);
this.dispatchEvent(new Event("load"));
});
} else {
fetch(url)
.then((res) => res.arrayBuffer())
.then((data) => {
this._cache[url] = data;
this._setData(data);
this.dispatchEvent(new Event("load"));
});
}
};
| Spezifikation |
|---|
| HTML # microtask-queuing |
WorkerGlobalScope.queueMicrotask()queueMicrotask() in core-jsWindowcachesclosedcookieStorecrashReportcredentiallesscrossOriginIsolatedcryptocustomElementsdevicePixelRatiodocumentdocumentPictureInPictureeventexternalfenceframeElementframesfullScreenhistoryindexedDBinnerHeightinnerWidthisSecureContextlaunchQueuelengthlocalStoragelocationlocationbarmenubarmozInnerScreenXmozInnerScreenYnamenavigationnavigatoropenerorientationoriginoriginAgentClusterouterHeightouterWidthparentperformancepersonalbarschedulerscreenscreenLeftscreenTopscreenXscreenYscrollbarsscrollMaxXscrollMaxYscrollXscrollYselfsessionStoragesharedStoragespeechSynthesisstatusstatusbartoolbartoptrustedTypesviewportvisualViewportwindowalert()atob()blur()btoa()cancelAnimationFrame()cancelIdleCallback()captureEvents()clearImmediate()clearInterval()clearTimeout()close()confirm()createImageBitmap()dump()fetch()fetchLater()find()focus()getComputedStyle()getDefaultComputedStyle()getScreenDetails()getSelection()matchMedia()moveBy()moveTo()open()postMessage()print()prompt()queryLocalFonts()queueMicrotask()releaseEvents()reportError()requestAnimationFrame()requestFileSystem()requestIdleCallback()requestResize()resizeBy()resizeTo()scroll()scrollBy()scrollByLines()scrollByPages()scrollTo()setImmediate()setInterval()setResizable()setTimeout()showDirectoryPicker()showOpenFilePicker()showSaveFilePicker()sizeToContent()stop()structuredClone()webkitConvertPointFromNodeToPage()webkitConvertPointFromPageToNode()afterprintappinstalledbeforeinstallpromptbeforeprintbeforeunloadblurdevicemotiondeviceorientationdeviceorientationabsoluteerrorfocusgamepadconnectedgamepaddisconnectedhashchangelanguagechangeloadmessagemessageerrorofflineonlineorientationchangepagehidepagerevealpageshowpageswappopstaterejectionhandledresizescrollsnapchangescrollsnapchangingstorageunhandledrejectionunloadvrdisplayactivatevrdisplayconnectvrdisplaydeactivatevrdisplaydisconnectvrdisplaypresentchangeBeforeUnloadEventDOMStringMapErrorEventHTMLAnchorElementHTMLAreaElementHTMLAudioElementHTMLBRElementHTMLBaseElementHTMLBodyElementHTMLButtonElementHTMLCanvasElementHTMLDListElementHTMLDataElementHTMLDataListElementHTMLDialogElementHTMLDivElementHTMLDocumentHTMLElementHTMLEmbedElementHTMLFieldSetElementHTMLFormControlsCollectionHTMLFormElementHTMLFrameSetElementHTMLGeolocationElementHTMLHRElementHTMLHeadElementHTMLHeadingElementHTMLHtmlElementHTMLIFrameElementHTMLImageElementHTMLInputElementHTMLLIElementHTMLLabelElementHTMLLegendElementHTMLLinkElementHTMLMapElementHTMLMediaElementHTMLMenuElementHTMLMetaElementHTMLMeterElementHTMLModElementHTMLOListElementHTMLObjectElementHTMLOptGroupElementHTMLOptionElementHTMLOptionsCollectionHTMLOutputElementHTMLParagraphElementHTMLPictureElementHTMLPreElementHTMLProgressElementHTMLQuoteElementHTMLScriptElementHTMLSelectElementHTMLSourceElementHTMLSpanElementHTMLStyleElementHTMLTableCaptionElementHTMLTableCellElementHTMLTableColElementHTMLTableElementHTMLTableRowElementHTMLTableSectionElementHTMLTemplateElementHTMLTextAreaElementHTMLTimeElementHTMLTitleElementHTMLTrackElementHTMLUListElementHTMLUnknownElementHTMLVideoElementHashChangeEventHistoryImageDataLocationMessageChannelMessageEventMessagePortNavigatorPageRevealEventPageSwapEventPageTransitionEventPluginPluginArrayPromiseRejectionEventRadioNodeListTimeRangesUserActivationValidityStateWorkletGlobalScopeDer Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |