0Pricing
TypeScript Academy · Lezione

Tipi condizionali

Esplori come i tipi condizionali consentano di creare tipi che si adattano dinamicamente alle condizioni, per definizioni flessibili e riutilizzabili

Tipi condizionali è una lezione TypeScript Academy gratuita su CoddyKit. Questa è la lezione 3 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento TypeScript Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso TypeScript Academy include 3 lezioni in totale.

Introduzione ai tipi condizionali

Introduzione ai tipi condizionali

I tipi condizionali in TypeScript consentono di creare tipi che si adattano dinamicamente in base a una condizione, rendendo il codice più flessibile e riutilizzabile.

Usano una sintassi simile a quella dell'operatore condizionale (ternary) di JavaScript.

Tipi condizionali — illustrazione 1

Cosa sono i tipi condizionali?

Cosa sono i tipi condizionali?

I tipi condizionali consentono di definire un tipo che dipende da un altro tipo. La sintassi di base è:

T extends U ? X : Y

Questo significa: se T estende U, il tipo è X; altrimenti è Y.

Esempio di base dei tipi condizionali

Esempio di base dei tipi condizionali

Ecco un semplice esempio:

type IsString<T> = T extends string ? 'Yes' : 'No';

// Test cases
type A = IsString<string>; // 'Yes'
type B = IsString<number>; // 'No'

Usare i tipi condizionali per i sovraccarichi delle funzioni

Usare i tipi condizionali per i sovraccarichi delle funzioni

I tipi condizionali possono semplificare i sovraccarichi delle funzioni determinando dinamicamente i tipi restituiti:

type ReturnType<T> = T extends (...args: any[]) => infer R ? R : never;

function getData(): string {
  return 'Hello';
}

type DataType = ReturnType<typeof getData>; // string

Tipi condizionali distributivi

Tipi condizionali distributivi

Quando i tipi condizionali vengono applicati a tipi unione, vengono distribuiti su ogni membro dell'unione:

type ToArray<T> = T extends any ? T[] : never;

type A = ToArray<string | number>;
// A = string[] | number[]

Combinare i tipi condizionali con i tipi mappati

Combinare i tipi condizionali con i tipi mappati

È possibile combinare i tipi condizionali con i tipi mappati per eseguire potenti trasformazioni dei tipi:

type User = {
  id: number;
  name: string;
  isAdmin?: boolean;
};

type MakeRequired<T> = {
  [K in keyof T]-?: T[K] extends undefined ? never : T[K];
};

type RequiredUser = MakeRequired<User>;
// { id: number; name: string; isAdmin: never; }

Casi d'uso comuni dei tipi condizionali

Casi d'uso comuni dei tipi condizionali

I tipi condizionali vengono comunemente usati per:

  • Inferire i tipi restituiti o i parametri.
  • Trasformare unioni e intersezioni.
  • Creare tipi di utilità come Exclude, Extract e NonNullable.

Attività pratica

Attività pratica

Crei un tipo condizionale che verifichi se un tipo è un array e, in tal caso, restituisca il tipo dei suoi elementi; altrimenti, restituisca il tipo stesso.

Congratulazioni!

Congratulazioni!

Ha imparato a usare i tipi condizionali per creare definizioni di tipo dinamiche e riutilizzabili in TypeScript. Metta in pratica questi concetti per scrivere codice TypeScript più potente e flessibile!

Tipi condizionali — illustrazione 10

Domande Frequenti

La lezione «Tipi condizionali» è gratuita?

Sì — il testo completo di «Tipi condizionali» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso TypeScript Academy, passa a CoddyKit PRO. Il corso TypeScript Academy include 3 lezioni in totale.

Cosa imparerò in «Tipi condizionali»?

Esplori come i tipi condizionali consentano di creare tipi che si adattano dinamicamente alle condizioni, per definizioni flessibili e riutilizzabili Eserciti TypeScript Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare TypeScript Academy?

Non è richiesta alcuna esperienza precedente. TypeScript Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 3.

Quanto tempo richiede la lezione «Tipi condizionali»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione TypeScript Academy?

Sì. Ogni lezione TypeScript Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Restringimento avanzato dei tipi
  2. Funzionalità avanzate delle classi
  3. Tipi condizionali
← Torna a TypeScript Academy