Intro Si una función no devuelve nada cuál es su tipo de retorno en TypeScript Muchos desarrolladores piensan undefined pero la respuesta real es más matizada Vamos a desglosarlo con ejemplos prácticos
Caso 1 Funciones normales sin return Cuando no devuelves nada TypeScript infiere void Ejemplo de declaración function logMessage(message: string): void { console.log(message); } Incluso si no pones la anotación TypeScript infiere (message: string) => void En tiempo de ejecución la función devuelve undefined de forma técnica pero TypeScript usa void para indicar ignora el valor de retorno
Caso 2 Funciones async sin return Para funciones async el tipo de retorno es Promise<void> Ejemplo async function logMessage(message: string): Promise<void> { console.log(message); } O con arrow const logMessage = async (message: string): Promise<void> => { console.log(message); } Si no la anotas TypeScript también infiere Promise<void>
Por qué no undefined Es tentador declarar function logMessage(message: string): undefined { console.log(message); } pero TypeScript dará un error indicando que falta una sentencia return y que el tipo de retorno no incluye undefined Eso sucede porque undefined obliga a devolver explícitamente undefined Ejemplo correcto que usa undefined function doNothing(): undefined { return undefined; }
Ejemplo práctico Un logger simple function logger(message: string): void { console.log(message); } Y una función async que guarda y registra datos async function saveAndLog(data: string): Promise<void> { await new Promise(res => setTimeout(res, 1000)); logger(Saved data: + data); } Aquí logger devuelve void y saveAndLog devuelve Promise<void>
Resumen breve void significa no me importa el valor de retorno undefined significa que la función debe devolver undefined de forma explícita En la práctica suele preferirse void salvo que se quiera forzar return undefined
Q2BSTUDIO Somos Q2BSTUDIO una empresa de desarrollo de software que crea soluciones a medida y aplicaciones escalables En nuestro catálogo ofrecemos desarrollo de aplicaciones a medida y software a medida así como servicios de inteligencia artificial para empresas incluyendo agentes IA y proyectos de ia para empresas También cubrimos ciberseguridad y pentesting, servicios cloud aws y azure, servicios inteligencia de negocio y soluciones con power bi para impulsar la toma de decisiones Si quieres saber más sobre nuestras soluciones de inteligencia artificial visita ia para empresas
Palabras clave incluidas aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi