Gli alias di tipo e le interfacce sono molto simili e possono essere utilizzati liberamente in molti casi, ma presentano comunque alcune differenze e limitazioni. Successivamente, li spiegherò in diversi casi.
Puoi vedere che gli alias di tipo possono definire tipi primitivi (simbolo, booleano, stringa, numero, bigint, ecc.), mentre le interfacce non possono.
Nota che è chiamato alias di tipo perché non crea nuovi tipi, ma le interfacce creano sempre nuovi tipi.
I tipi di unione possono anche essere definiti solo utilizzando alias di tipo.
I tipi di tuple possono anche essere definiti solo utilizzando alias di tipo.
Sia l'interfaccia che il tipo possono dichiarare tipi di oggetto o tipi di funzione. Ma l'interfaccia può dichiarare la stessa interfaccia più volte, verranno unite automaticamente, mentre gli alias di tipo non si uniranno e devono essere univoci.
Un altro punto chiave è che gli alias di tipo utilizzano l'intersezione e le interfacce utilizzano l'ereditarietà.
Come mostrato nell'errore sopra, quando l'interfaccia eredita, il sottotipo non può entrare in conflitto con il supertipo, puoi solo estenderlo, in questo modo:
Quindi, come puoi vedere, l'interfaccia usa extends per implementare l'ereditarietà e l'alias di tipo usa &per implementare l'intersezione.
In alcuni casi, può essere utile l'unione automatica e l'estendibilità delle interfacce. Immagina se creassi una libreria di terze parti e esponessi le API pubbliche, gli utenti potrebbero estenderla attraverso il meccanismo dell'interfaccia, è fantastico!
Quindi il suggerimento qui è che se si desidera dichiarare un tipo di oggetto, utilizzare prima l'interfaccia e utilizzare gli alias di tipo quando necessario.
Puoi vedere che i tipi di oggetti mappati possono essere definiti solo utilizzando alias di tipo, inclusa la inparola chiave e la keyofparola chiave.
Quando abbiamo a che fare con tipi sconosciuti, possiamo usare typeofper l'acquisizione del tipo, ma poi possiamo usare solo alias di tipo e non interfacce.
Per riassumere, gli alias di tipo coprono quasi tutte le funzionalità delle interfacce, ma le interfacce sono sempre estensibili, mentre gli alias di tipo non lo sono. Quindi potrebbe essere necessario sceglierli in base a casi specifici.
Finally, I’m Lee. I will continue to output stories related to frontend technology. If you like such stories and want to support me, please consider becoming a Medium member. It costs $5 per month and gives you unlimited access to Medium content. I’ll get a little commission if you sign up via my link.
That’s it — thanks.
“Mi proteggerà quando sarò in pericolo. mi nasconderà nella sua tenda.
[Avviso di attivazione: questo saggio include schermate di persone che elogiano l'assassino di Jordan Neely.] I funzionari delle forze dell'ordine hanno finalmente - e forse con riluttanza - accusato Daniel Penny, l'uomo che ha soffocato Jordan Neely fino alla sua morte, per quell'omicidio.
Puoi essere un investigatore OSINT, un giocatore CTF o semplicemente qualcuno che riceve chiamate spam. Qualcuno che sta cercando di verificare il numero che hai visto in una pubblicità.
Nel panorama aziendale in rapida evoluzione di oggi, il concetto di lavoro ibrido e remoto ha acquisito uno slancio senza precedenti. Mentre le aziende continuano ad adattarsi alle mutevoli esigenze e aspettative dei propri dipendenti, esperti di vari settori si sono riuniti per discutere i vantaggi, le sfide e il futuro di questo modo di lavorare trasformativo.
"Ehi Siri, suona Me Dive di Olivia Dean." Era maggio 2021 quando ho iniziato il mio tirocinio presso la Future Academy Africa ad Akure, in Nigeria.