Búsqueda de sitios web

javascript - Evitando Promesas Flotantes en TypeScript. ¿Void vs .catch Cuándo? ¿Por qué?


Estoy bastante acostumbrado a ver promesas manejadas en el estilo then/catch en TypeScript, como:

.findById(id)
.then((result: something | undefined) => result ?? dosomething(result))
.catch((error: any) => console.log(error))

Sin embargo, también veo el patrón donde se utiliza void para evitar la promesa flotante y, de hecho, a veces mi servidor de lenguaje lo recomienda como solución.

void somePromise().dosomething();

Ahora, no estoy particularmente versado en TypeScript o en promesas en absoluto, pero me cuesta ver cómo alguna vez sería preferible omitir el uso de catch y simplemente usar void. Una búsqueda rápida en Google no me dio ninguna distinción clara sobre cuándo hacer qué.

Hay otra respuesta que explica lo que hace void, pero no por qué querría usarlo. Y hay varias preguntas relacionadas con resolver promesas flotantes, pero ninguna que yo haya encontrado que detalle por qué tomaría el enfoque void en lugar de catch.

Respuesta #1

Agregar void aquí realmente no altera el comportamiento de tu programa, así que la única razón por la que esto podría mencionarse es como una especie de operador de 'cállate', por ejemplo: un medio para silenciar tu linter.

Artículos relacionados