Wat is het weglaattype in TypeScript?

Wat Is Het Weglaattype In Typescript



TypeScript biedt een breed scala aan hulpprogramma's om het typesysteem handiger en efficiënter te maken. Met deze typen kunnen gebruikers een nieuw type bouwen op basis van het bestaande type door eigenschappen te verwijderen of te wijzigen, eigenschappen alleen-lezen of optioneel te maken, en nog veel meer. Elk hulpprogrammatype voert specifieke functionaliteit uit op basis van zijn naam, zoals het “optionele” type maakt de eigenschappen optioneel, “alleen-lezen” declareert het veld als alleen-lezen, enzovoort.

In deze handleiding wordt het hulpprogrammatype “Omit” in TypeScript uitgelegd.

Wat is het weglaattype in TypeScript?

De ' Weglaten 'utility type' creëert een nieuw type door de onnodige eigenschappen van het basistype uit te sluiten. Het basistype vertegenwoordigt het bestaande type waaruit het nieuwe type voortkomt.







Syntaxis



typ NieuwType = Weglaten < Bestaand type, 'Eigenschapnaam1' | 'Eigenschapnaam2' | ... >

De bovenstaande syntaxis kan “ Weglaten ” meerdere eigenschappen van “ Bestaand type ” door ze te scheiden met behulp van de “ OF (|)”-operator.



Laten we het hierboven gedefinieerde hulpprogramma ‘Omit’ praktisch gebruiken.





Voorbeeld 1: Het toepassen van “Omit” met Type Alias

In dit voorbeeld wordt het hulpprogramma 'Omit' gebruikt om een ​​nieuw type te maken van het bestaande type.



Code

Kopieer de gegeven coderegel in het '.ts' -bestand van het TypeScript-project:

typ Gebruiker = {
naam : snaar,
leeftijd : nummer,
plaats : snaar
} ;

typ GebruikerZonderAge = Weglaten < Gebruiker, 'leeftijd' >;

const gebruiker zonder leeftijd : Gebruiker zonder leeftijd = {

naam : 'Of' ,

plaats : 'Islamabad'

} ;

troosten. loggen ( gebruiker zonder leeftijd ) ;

In deze code:

  • De ' Gebruiker ”type wordt gedefinieerd met de naam, leeftijd en locatie van de opgegeven eigenschappen.
  • Vervolgens wordt de “ Gebruiker zonder leeftijd Er wordt een nieuw type gemaakt op basis van het bestaande type 'Gebruiker' door de eigenschap 'leeftijd' uit te sluiten met behulp van de ' Weglaten soort nutsvoorziening.
  • Daarna wordt een object “ gebruiker zonder leeftijd ' van het type 'UserWithoutAge' wordt gemaakt en specificeert alle velden van het bestaande type 'Gebruiker' behalve 'leeftijd'.
  • Als laatste wordt de “ console.log() De methode wordt toegepast om het object ‘userwithoutage’ weer te geven.

Uitvoer

Compileer het “.ts”-bestand en voer het automatisch gegenereerde “.js”-bestand uit:

tsc hoofd. js // Compile.ts-bestand

knooppunt hoofd. js // Voer het .js-bestand uit

Het is te zien dat de terminal de uitvoer weergeeft van het nieuwe type “UserWithoutAge” -object.

Voorbeeld 2: Het toepassen van het “Omit” Type met interface

In dit voorbeeld wordt het hulpprogrammatype “Omit” toegepast met interfaces om een ​​nieuw type te maken.

Code

koppel Gebruiker {

naam : snaar ;

leeftijd : nummer ;

plaats : snaar ;

}

typ Nieuwe Persoon = Weglaten < Gebruiker, 'leeftijd' | 'plaats' >;

const persoon : Nieuw persoon = {

naam : 'Of'

} ;

troosten. loggen ( persoon ) ;

Nu de aangegeven coderegels:

  • Definieer een interface “ Gebruiker ” met de volgende eigenschappen: naam, tekenreeks en locatie.
  • Maak vervolgens een nieuw type “ Nieuw persoon ” uit de bestaande interface “Gebruiker” met uitzondering van de opgegeven eigenschappen, leeftijd en locatie.
  • Maak daarna het nieuwe type “NewPerson” object met de naam “ persoon ” waarbij slechts één eigenschap wordt gespecificeerd, namelijk “naam” van de bestaande interface “Gebruiker”.
  • Geef ten slotte de velden van het object 'persoon' weer met behulp van de ' console.log() methode.

Uitvoer

Compileer en voer de code uit:

tsc hoofd. js // Compile.ts-bestand

knooppunt hoofd. js // Voer het .js-bestand uit

De terminal toont slechts één eigenschapswaarde van het nieuwe type “NewPerson” dat in het object is opgegeven.

Voorbeeld 3: Het toepassen van het “Omit” Type With Function()

In dit voorbeeld wordt het type “Omit” gebruikt met een functie om het object van een interface te retourneren die als argument is doorgegeven, door een paar eigenschappen van de bestaande interface weg te laten.

Code

koppel Gebruiker {

naam : snaar ;

leeftijd : nummer ;

plaats : snaar ;

}

functie getUserDetails ( nieuwe gebruiker : Weglaten < Gebruiker, 'naam' | 'plaats' > ) : nummer {

opbrengst ( nieuwe gebruiker. leeftijd )

}

const nieuwe gebruiker : Gebruiker = {

leeftijd : 40 ,

naam : 'Of' ,

plaats : 'Islamabad'

} ;

const gebruikersdetails = getUserDetails ( nieuwe gebruiker ) ;

troosten. loggen ( gebruikersdetails ) ;

Het bovenstaande codefragment:

  • Maak eerst een interface “ Gebruiker 'met naam-, leeftijd- en locatie-eigenschappen.
  • Definieer vervolgens een functienaam “ getUserDetails() ', waarbij de eigenschappen 'naam' en 'locatie' van het type 'newuser' van de bestaande interface worden weggelaten, d.w.z. 'Gebruiker'.
  • Deze functie retourneert een numerieke waarde, d.w.z. “leeftijd” van de gebruiker.
  • Maak nu een object van de “ nieuwe gebruiker ' van interface 'Gebruiker' om de eigenschappenwaarden ervan op te geven.
  • Roep daarna de gedefinieerde functie “getUserDetails()” aan en geef het object “newuser” als parameter door met behulp van de tekst “ gebruikersdetails 'constant.
  • Geef ten slotte de uitvoer “userDeatils” weer via de “ console.log() methode.

Uitvoer

tsc hoofd. js // Compile.ts-bestand

knooppunt hoofd. js // Voer het .js-bestand uit

De terminal toont alleen de “ leeftijd 'eigenschapswaarde omdat 'naam' en 'locatie' worden uitgesloten via het hulpprogramma 'Omit'.

Conclusie

In TypeScript is het hulpprogrammatype “ Weglaten ” neemt het bestaande type als eerste parameter en creëert een nieuw type door enkele eigenschappen van het bestaande type uit te sluiten. Dit hulpprogramma helpt bij het dupliceren van een bestaand type voor het maken van een nieuw type met enkele van zijn eigenschappen, in plaats van het nieuwe type helemaal opnieuw te maken. Het kan worden toegepast met “type” alias, interfaces en functies. In deze handleiding wordt het hulpprogramma 'Omit' in TypeScript uitgebreid uitgelegd.