0Pricing
TypeScript Academy · Lezione

Tipi unione e intersezione

Combini e utilizzi più tipi

Tipi unione e intersezione è una lezione TypeScript Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. 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 4 lezioni in totale.

Tipi di unione e di intersezione

Tipi di unione e di intersezione

Benvenuto nella prossima lezione! In questa lezione imparerà a usare i tipi di unione per consentire più tipi possibili per una variabile e i tipi di intersezione per combinare più tipi in uno solo. Sono strumenti potenti per creare codice flessibile e robusto. Iniziamo!

Tipi unione e intersezione — illustrazione 1

Cosa sono i tipi di unione?

Cosa sono i tipi di unione?

I tipi di unione consentono a una variabile di contenere più di un tipo. Può usare il simbolo | per definire un tipo di unione.

Esempio: una variabile che può essere una stringa oppure un numero:

Attività: dichiari una variabile con un tipo di unione e le assegni valori diversi.

let value: string | number;
value = "Hello";
console.log(value); // Output: "Hello"

value = 42;
console.log(value); // Output: 42

Usare i tipi di unione nelle funzioni

Usare i tipi di unione nelle funzioni

Può usare i tipi di unione nei parametri delle funzioni per consentire più tipi di input. Esempio:

Attività: scriva una funzione che accetti un parametro di tipo di unione e lo registri nella console.

function printValue(value: string | number): void {
  console.log(`The value is ${value}`);
}

printValue("Hello"); // Output: The value is Hello
printValue(100); // Output: The value is 100

Cosa sono i tipi di intersezione?

Cosa sono i tipi di intersezione?

I tipi di intersezione combinano più tipi in uno solo. Può usare il simbolo & per definire un tipo di intersezione.

Esempio: combinare due tipi di oggetto:

Attività: crei un tipo di intersezione per combinare due oggetti e lo utilizzi.

type Person = { name: string };
type Employee = { employeeId: number };

type Staff = Person & Employee;

let staffMember: Staff = {
  name: "Alice",
  employeeId: 123,
};

console.log(staffMember);

Usare i type guard con le unioni

Usare i type guard con le unioni

TypeScript non sa quale tipo sta usando in un tipo di unione. Può usare i type guard per restringere il tipo. Esempio:

Attività: usi i type guard per gestire tipi diversi in un'unione.

function display(value: string | number): void {
  if (typeof value === "string") {
    console.log(`String value: ${value.toUpperCase()}`);
  } else {
    console.log(`Number value: ${value * 2}`);
  }
}

display("Hello"); // Output: String value: HELLO
display(5); // Output: Number value: 10

Tipi di intersezione nella pratica

Tipi di intersezione nella pratica

I tipi di intersezione sono utili quando si lavora con oggetti che condividono proprietà. Esempio:

Attività: crei un tipo di intersezione per i ruoli di amministratore e utente.

type Admin = { adminLevel: string };
type User = { username: string };

type AdminUser = Admin & User;

let admin: AdminUser = {
  adminLevel: "super",
  username: "admin123",
};

console.log(`Admin ${admin.username} has level ${admin.adminLevel}`);

Errori comuni con i tipi di unione e di intersezione

Errori comuni con i tipi di unione e di intersezione

Ecco alcuni errori comuni:

  • Usare un tipo di unione senza gestire tutti i casi possibili, ad esempio dimenticando un type guard.
  • Complicare eccessivamente i tipi con intersezioni non necessarie.
  • Assegnare valori incompatibili a un tipo di unione o di intersezione.

Suggerimento: verifichi sempre il codice per assicurarsi che i tipi funzionino come previsto!

Quando usare unioni e intersezioni

Quando usare unioni e intersezioni

Usi i tipi di unione quando:

  • Una variabile può avere uno tra diversi tipi possibili.
  • Ha bisogno di flessibilità nei parametri delle funzioni.

Usi i tipi di intersezione quando:

  • Combina più oggetti o tipi in uno solo.
  • Crea tipi più complessi per casi d'uso specifici.
type A = { x: number };
type B = { y: number };

type AB = A & B;

let obj: AB = { x: 5, y: 10 };

Ottimo lavoro!

Ottimo lavoro!

Congratulazioni! Ha imparato a usare i tipi di unione e di intersezione per gestire scenari complessi in TypeScript. Questi strumenti rendono il codice più flessibile ed espressivo. Nella prossima lezione esploreremo gli enum e il modo in cui aiutano a gestire valori costanti. Continuiamo a programmare!

Tipi unione e intersezione — illustrazione 10

Domande Frequenti

La lezione «Tipi unione e intersezione» è gratuita?

Sì — il testo completo di «Tipi unione e intersezione» è 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 4 lezioni in totale.

Cosa imparerò in «Tipi unione e intersezione»?

Combini e utilizzi più tipi 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 2 di 4.

Quanto tempo richiede la lezione «Tipi unione e intersezione»?

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. Array e tuple
  2. Tipi unione e intersezione
  3. Enum
  4. Tipi letterali
← Torna a TypeScript Academy