Das neue Schlüsselwort in TypeScript 5.2: `using`
(totaltypescript.com)- In TypeScript 5.2 wurde mit
usingein neues Schlüsselwort hinzugefügt, mit dem sich Objekte beim Verlassen ihres Gültigkeitsbereichs explizit freigeben lassen. - Die Funktion ähnelt dem
using, das es bereits in C# und anderen Sprachen gibt.- Wenn eine bestimmte Funktion ein Objekt zurückgibt, wird dieser Funktion über das Symbol
Symbol.disposezugewiesen. - Über
usingwird diese Funktion aufgerufen. - Wenn der Gültigkeitsbereich anschließend verlassen wird, wird die Funktion
Symbol.disposeaufgerufen.
- Wenn eine bestimmte Funktion ein Objekt zurückgibt, wird dieser Funktion über das Symbol
- Grundlage ist der TC39-Vorschlag für explizites Ressourcenmanagement, der kürzlich Stage 3 erreicht hat.
- Über
Symbol.asyncDisposekönnen asynchrone Funktionen zugewiesen werden, und mitawait usinglassen sich Objekte asynchron verwalten. - Kann in vielen Situationen eingesetzt werden, etwa bei DB-Verbindungen, Datei-Handles und mehr.
1 Kommentare
Diese Funktion ist eigentlich keine TypeScript-Funktion, sondern fühlt sich eher wie eine Art Polyfill an, das auf einem für ECMAScript vorgeschlagenen Feature basiert.
Laut einem Vorschlag von TC39 soll sie künftig auch in JavaScript implementiert werden.
Ich erinnere mich noch, dass
usingin C# ziemlich praktisch war, daher begrüße ich das grundsätzlich,aber am Ende gibt es auch einige Stimmen, die sagen, dass es doch letztlich dasselbe wie
try ... finallyist.