Hva er TypeScript Interface vs Type?

Hva Er Typescript Interface Vs Type



TypeScript støtter egendefinerte typer, som kan defineres ved å bruke enten ' grensesnitt ' eller ' type '. Et grensesnitt kan implementeres av en klasse eller et objekt, mens et typealias bare kan brukes til å lage et nytt navn for en eksisterende type eller for å definere en forening av typer. Selv om typer og grensesnitt ofte kan byttes ut, er det visse forskjeller i funksjonalitet og syntaks som gjør dem mer passende for bestemte scenarier.

Denne bloggen vil beskrive TypeScript-grensesnittet og typen og deres forskjell.







Hva er TypeScript Interface vs Type?

' Grensesnitt ' og ' type ' brukes til å definere egendefinerte typer i TypeScript. Men det er noen forskjeller i funksjonalitet og syntaks. Hovedforskjellen mellom et grensesnitt og en type er at et grensesnitt definerer en ny type, mens et typealias ikke gjør det.



Et grensesnitt kan implementeres av en klasse eller et objekt, mens typer kan definere mer komplekse typer ved å bruke funksjoner som fagforeninger og skjæringspunkter. Generelt er grensesnitt mer vanlig for å definere objektformer og API-er, mens typer er mer vanlig brukt for å definere komplekse datatyper og verktøytyper. La oss forstå begge disse separat.



Hva er et TypeScript-grensesnitt?

Et TypeScript-grensesnitt er en teknikk for å definere formen til et TypeScript-objekt. Den er opprettet ved å bruke søkeordet ' grensesnitt ” og den spesifiserer et sett med attributter og metoder som et objekt krever for å bli klassifisert som av den typen. Det tilsvarer en klasse i objektorientert programmering; den definerer imidlertid ingen implementering. Grensesnitt brukes hovedsakelig for typekontroll og for å sikre at et objekt samsvarer med en bestemt struktur.





Før du fortsetter, husk at for å kjøre en TypeScript-fil, må den transpileres til en JavaScript-fil og deretter kjøre JavaScript-koden på terminalen ved å bruke de gitte kommandoene:

tsc filnavn.ts
node filnavn.js


Eksempel



Lag et grensesnitt kalt 'Bruker' som definerer tre attributter og en metode ' få informasjon() ':

grensesnitt bruker {
fornavn: streng;
etternavn: streng;
alder: tall;
få informasjon ( ) : tomrom;
}


Opprett en klasse ' Student ” som er arvet med et grensesnitt. Klassen definerer sine attributter, en konstruktør som vil tilordne verdiene til attributtene, og en metode 'getInfo()' som viser verdiene i forhold til attributtene:

klasse Elev implementerer Bruker {
fornavn: streng;
etternavn: streng;
alder: tall;

konstruktør ( fornavn: streng, etternavn: streng, alder: nummer ) {
dette.fornavn = fornavn;
dette.etternavn = etternavn;
this.age = alder;
}
få informasjon ( ) : tomrom {
console.log ( 'Studentinformasjon:' )
console.log ( '- Navn: ' + this.firstName + ' ' + dette.etternavnet ) ;
console.log ( '- Alder: ' + denne.alderen ) ;
}
}


Lag et objekt av ' Student 'navngitt' std ' av ' Bruker ' skriv ved å kalle konstruktøren med nøkkelordet 'ny' og kall deretter getInfo()-metoden for å skrive ut dataene på konsollen:

const std: Bruker = ny student ( 'Flaggermus' , 'Steve' , 17 ) ;
std.getInfo ( ) ;


Produksjon

Hva er en TypeScript-type?

TypeScript-typer brukes for det meste for å lage aliaser for eksisterende typer, så vel som for å lage mer kompliserte typer. Den representerer en bestemt form eller struktur av data. Det kan defineres/erklæres med ' type ' nøkkelord. TypeScripts typer kan brukes til å gjøre koden mer forståelig og redusere repetisjon/duplisering.

Eksempel

Først definerer du en type ' Bruker ' bruker ' type ' nøkkelord spesifisert med fem egenskaper en av dem er et valgfritt attributt som er ' telefon ':

type Bruker = {
fornavn: streng;
etternavn: streng;
alder: tall;
e-post: streng;
telefon?: streng;
} ;


Definer en funksjon kalt ' getFullName ', som tar en parameter av typen ' Bruker ' og skriver ut dataene som består av personens informasjon inkludert ' Navn ', ' alder ', ' e-post ' og ' telefonnummer ':

funksjon få informasjon ( person: Bruker ) : tomrom {
console.log ( 'Brukerinformasjon:' )
console.log ( '- Navn: ' + person.fornavn + ' ' + person.etternavn ) ;
console.log ( '- Alder: ' + person.alder ) ;
console.log ( '- E-post: ' + person.e-post ) ;
console.log ( '-Telefonnummer: ' + person.telefon ) ;
}


Lag nå et objekt ' person ' av typen ' Bruker ' med nøkkelverdi-par:

const person: Bruker = {
fornavn: 'Mily' ,
etternavn: 'Micheal' ,
alder: 28 ,
e-post: 'mili124@yahoo.com' ,
telefon: '086-34581734'
} ;


Til slutt, skriv ut brukerinformasjonen ved å kalle funksjonen getInfo():

console.log ( få informasjon ( person ) ) ;


Produksjon


Det handlet om TypeScript-grensesnittet og typen.

Konklusjon

I TypeScript, ' grensesnitt ' og ' type ' brukes til å definere egendefinerte typer. Et grensesnitt kan implementeres av en klasse eller et objekt, mens typer kan definere mer komplekse typer ved å bruke funksjoner som fagforeninger og skjæringspunkter. Dette er de kraftige funksjonene som kan bidra til å skrive mer organisert og skalerbar kode. Denne bloggen beskrev TypeScript-grensesnittet og typen og deres forskjell.