Cómo usar funciones en TypeScript: guía para principiantes

Las funciones son un componente fundamental en TypeScript, al igual que en JavaScript. TypeScript amplía las funciones de JavaScript con características adicionales, como anotaciones de tipo, que mejoran la claridad del código y evitan errores. Esta guía para principiantes le mostrará cómo usar funciones en TypeScript.

Definición de funciones

En TypeScript, puedes definir funciones como en JavaScript, pero con anotaciones de tipo opcionales para especificar los tipos de parámetros y valores de retorno.

Definición de función básica

A continuación se explica cómo definir una función simple en TypeScript:

function greet(name: string): string {
  return "Hello, " + name;
}

En este ejemplo, name es un parámetro de tipo string, y la función devuelve un valor de tipo string.

Parámetros de función y tipos de retorno

TypeScript le permite especificar los tipos de parámetros de función y valores de retorno, lo que ayuda a garantizar que la función se utilice correctamente.

Función con parámetros

Aquí hay una función que toma dos parámetros y devuelve su suma:

function add(x: number, y: number): number {
  return x + y;
}

En esta función, tanto x como y son del tipo number, y la función devuelve un number.

Funciones sin valor de retorno

No todas las funciones necesitan devolver un valor. Las funciones que no tienen valor de retorno se declaran con un tipo de retorno void. Estas funciones realizan acciones pero no producen un resultado.

Ejemplo sin valor de retorno

function logMessage(message: string): void {
  console.log(message);
}

En este ejemplo, logMessage imprime el message en la consola pero no devuelve ningún valor.

Parámetros opcionales y predeterminados

TypeScript admite parámetros opcionales y predeterminados, lo que le permite crear funciones más flexibles.

Parámetros opcionales

Los parámetros opcionales se especifican agregando un ? después del nombre del parámetro:

function greet(name: string, greeting?: string): string {
  if (greeting) {
    return greeting + ", " + name;
  }
  return "Hello, " + name;
}

En este ejemplo, greeting es un parámetro opcional que se puede omitir al llamar a la función.

Parámetros predeterminados

Los parámetros predeterminados tienen un valor predeterminado si no se proporciona ningún valor:

function greet(name: string, greeting: string = "Hello"): string {
  return greeting + ", " + name;
}

Si no se proporciona greeting, el valor predeterminado es "Hello".

Sobrecarga de funciones

TypeScript admite la sobrecarga de funciones, lo que le permite definir múltiples firmas de funciones para el mismo nombre de función:

function greet(name: string): string;
function greet(name: string, age: number): string;
function greet(name: string, age?: number): string {
  if (age !== undefined) {
    return `Hello, ${name}. You are ${age} years old.`;
  }
  return `Hello, ${name}.`;
}

En este ejemplo, greet se puede llamar con uno o dos parámetros.

Funciones de flecha

Las funciones de flecha proporcionan una sintaxis más corta para escribir funciones y no tienen su propio contexto this:

const add = (x: number, y: number): number => x + y;

Este ejemplo muestra cómo definir una función de flecha que suma dos números.

Conclusión

Las funciones en TypeScript son una forma eficaz de encapsular y reutilizar código. Mediante el uso de anotaciones de tipo, parámetros opcionales y predeterminados, sobrecarga de funciones y funciones de flecha, puede escribir código más sólido y fácil de mantener. Comprender estos conceptos básicos le ayudará a aprovechar al máximo las capacidades de TypeScript en sus proyectos.