- En TypeScript 5.2 se agregó
using, una nueva palabra clave que permite liberar explícitamente objetos al salir de su alcance.
- Es una función similar al
using que ya existe en C# y otros lenguajes.
- Cuando una función específica devuelve un objeto, se asigna la función usando el símbolo
Symbol.dispose.
- Esa función se invoca mediante
using.
- Luego, al salir del alcance, se llama a la función
Symbol.dispose.
- Está basado en la propuesta de gestión explícita de recursos de TC39, que recientemente alcanzó la etapa 3.
- También se puede asignar una función asíncrona mediante
Symbol.asyncDispose y procesar objetos de forma asíncrona con await using.
- Puede aplicarse en diversos casos, como conexiones a bases de datos, manejadores de archivos y más.
1 comentarios
En realidad, esta función no es propiamente una característica de TypeScript, sino algo con aire de polyfill basado en una propuesta para ECMAScript.
Dicen que también está previsto que se implemente en JavaScript por la propuesta de TC39.
A mí me parece bien porque recuerdo que
usingera bastante cómodo cuando usaba C#,aunque también hay quienes dicen que al final no es lo mismo que
try ... finally.