Funzioni TypeScript: come utilizzare i parametri e i tipi di ritorno

Le funzioni sono i mattoni di qualsiasi linguaggio di programmazione e TypeScript le potenzia aggiungendo la sicurezza dei tipi. Definendo i tipi per i parametri e i valori di ritorno, TypeScript consente agli sviluppatori di scrivere codice più affidabile e gestibile. Questa guida ti introdurrà alle funzioni TypeScript, spiegando come usare i parametri e i tipi di ritorno in modo efficace.

Definizione di una funzione in TypeScript

In TypeScript, le funzioni possono essere definite usando la parola chiave function, simile a JavaScript. Tuttavia, TypeScript consente di specificare i tipi di parametri e i valori di ritorno per una maggiore sicurezza e leggibilità.

Esempio di funzione di base

Ecco un esempio di una funzione TypeScript di base con parametri tipizzati e un tipo di ritorno:

function add(a: number, b: number): number {
  return a + b;
}

const result = add(5, 3); // Output: 8

In questo esempio, la funzione add accetta due parametri di tipo number e restituisce un valore di tipo number. Ciò garantisce che sia l'input che l'output siano conformi ai tipi previsti.

Parametri di funzione in TypeScript

Le funzioni TypeScript possono accettare vari tipi di parametri, come parametri opzionali, predefiniti e rest. Esploriamo ogni tipo in dettaglio.

Parametri facoltativi

È possibile definire parametri facoltativi aggiungendo ? dopo il nome del parametro. Non è necessario fornire parametri facoltativi quando si richiama la funzione.

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

console.log(greet("Alice")); // Output: Hello, Alice.
console.log(greet("Bob", 25)); // Output: Hello, Bob. You are 25 years old.

In questo esempio, il parametro age è facoltativo. La funzione funziona correttamente indipendentemente dal fatto che age sia fornito o meno.

Parametri predefiniti

I parametri predefiniti consentono di specificare valori predefiniti per i parametri nel caso in cui non vengano forniti quando viene chiamata la funzione.

function multiply(a: number, b: number = 2): number {
  return a * b;
}

console.log(multiply(5)); // Output: 10
console.log(multiply(5, 3)); // Output: 15

In questo esempio, il parametro b ha un valore predefinito di 2. Se non viene fornito alcun secondo argomento, verrà utilizzato per impostazione predefinita 2.

Parametri di riposo

I parametri Rest consentono di passare un numero variabile di argomenti a una funzione. Sono definiti utilizzando la sintassi ....

function sum(...numbers: number[]): number {
  return numbers.reduce((total, num) => total + num, 0);
}

console.log(sum(1, 2, 3, 4)); // Output: 10
console.log(sum(5, 10, 15)); // Output: 30

In questo esempio, la funzione sum accetta un numero qualsiasi di argomenti, tutti di tipo number, e restituisce la loro somma.

Tipi di ritorno in TypeScript

Specificare il tipo di ritorno di una funzione è importante quanto definire i tipi di parametro. Aiuta TypeScript a comprendere l'output previsto della funzione, assicurando che restituisca il tipo corretto di dati.

Specifica dei tipi di ritorno

Per specificare il tipo di ritorno di una funzione, aggiungere i due punti : seguiti dal tipo dopo l'elenco dei parametri.

function isEven(num: number): boolean {
  return num % 2 === 0;
}

console.log(isEven(4)); // Output: true
console.log(isEven(5)); // Output: false

In questo esempio, la funzione isEven restituisce boolean che indica se il numero in input è pari o meno.

Funzioni senza tipo di ritorno

Quando una funzione non restituisce un valore, il suo tipo di ritorno è void. Questo è utile per le funzioni che eseguono un'azione senza fornire un risultato.

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

logMessage("Hello, TypeScript!"); // Output: Hello, TypeScript!

In questo esempio, la funzione logMessage registra un messaggio nella console e non restituisce nulla, quindi il tipo restituito è void.

Conclusione

Le funzioni TypeScript forniscono un modo potente per scrivere codice type-safe definendo tipi di parametro e tipi di ritorno. Utilizzando parametri opzionali, predefiniti e rest, nonché specificando tipi di ritorno, puoi creare funzioni più robuste e gestibili. Inizia a utilizzare le funzioni TypeScript nei tuoi progetti per garantire una migliore qualità e sicurezza del codice.