0Pricing
TypeScript Academy · Lezione

Alias di tipo per tipi complessi

Crei nomi di tipo riutilizzabili con la parola chiave type.

Alias di tipo per tipi complessi è 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.

Benvenuto

Gli alias di tipo assegnano un nome a qualsiasi espressione di tipo: primitivi, unioni, intersezioni, tuple o oggetti. Rendono i tipi complessi riutilizzabili e leggibili.

La parola chiave type

Crei un alias di tipo con `type Name = TypeExpression`. Può essere utilizzato ovunque si utilizzerebbe il tipo originale.
type UserId = number;
type UserName = string;
type Point = { x: number; y: number };

Creare alias per i tipi unione

Assegni un nome ai tipi unione complessi per rendere più leggibili le firme delle funzioni.
type StringOrNumber = string | number;
function format(val: StringOrNumber): string {
  return String(val);
}

Creare alias per i tipi oggetto

Gli alias per i tipi oggetto funzionano come le interfacce per descrivere le forme degli oggetti.
type Product = {
  id: number;
  name: string;
  price: number;
};
const p: Product = { id: 1, name: 'Widget', price: 9.99 };

Creare alias per i tipi tupla

Assegni un nome ai modelli di tupla comuni per non doverne ripetere la struttura ovunque.
type Coordinate = [number, number];
type RGB = [number, number, number];
const pos: Coordinate = [10, 20];

Creare alias per i tipi funzione

Assegni un nome alle firme dei tipi funzione per mantenere puliti gli elenchi dei parametri.
type Comparator<T> = (a: T, b: T) => number;
const numSort: Comparator<number> = (a, b) => a - b;

Gli alias di tipo possono utilizzare i generics

Come le interfacce, gli alias di tipo supportano i parametri di tipo generici.
type Maybe<T> = T | null | undefined;
type Pair<A, B> = { first: A; second: B };

Alias di tipo autoreferenziali

Gli alias di tipo possono fare riferimento a se stessi per strutture dati ricorsive come alberi e liste concatenate.
type TreeNode = {
  value: number;
  left?: TreeNode;
  right?: TreeNode;
};

Gli alias di tipo non possono essere riaperti

A differenza delle interfacce, gli alias di tipo non possono essere estesi con dichiarazioni aggiuntive dopo la definizione. Sono fissi.
// Interface can be merged (declaration merging):
interface A { x: number; }
interface A { y: number; } // OK — A now has x and y

// Type alias cannot:
type B = { x: number };
// type B = { y: number }; // Error: duplicate identifier

Unione discriminata con gli alias di tipo

Gli alias di tipo sono ideali per le unioni discriminate, un modello che combina i tipi unione con una proprietà letterale condivisa.
type Success = { kind: 'success'; data: string };
type Failure = { kind: 'failure'; error: Error };
type Result = Success | Failure;

Quando preferire type a interface

Utilizzi `type` per unioni, tuple, firme di funzione e quando è necessario creare tipi calcolati complessi. Utilizzi `interface` per le strutture degli oggetti che potrebbero essere estese o implementate.

Verifica rapida

Quale funzionalità supporta `interface` ma NON gli alias `type`?

Riepilogo

Gli alias di tipo assegnano un nome a qualsiasi espressione di tipo, incluse unioni, tuple, oggetti e funzioni. Supportano i generics e la ricorsione. A differenza delle interfacce, non possono essere riaperti dopo la definizione.

Domande Frequenti

La lezione «Alias di tipo per tipi complessi» è gratuita?

Sì — il testo completo di «Alias di tipo per tipi complessi» è 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 «Alias di tipo per tipi complessi»?

Crei nomi di tipo riutilizzabili con la parola chiave type. 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 «Alias di tipo per tipi complessi»?

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. Definizione della struttura degli oggetti con le interfacce
  2. Alias di tipo per tipi complessi
  3. Estensione e fusione delle interfacce
  4. Interface o type: quando usare ciascuno
← Torna a TypeScript Academy