Vad är utelämnandetypen i TypeScript?

Vad Ar Utelamnandetypen I Typescript



TypeScript erbjuder ett brett utbud av verktygstyper för att göra dess typsystem mer bekvämt och effektivt. Dessa typer tillåter användare att bygga en ny typ baserat på den befintliga typen genom att ta bort eller ändra egenskaper, göra egenskaper skrivskyddade eller valfria och mycket mer. Varje verktygstyp utför specifik funktionalitet baserat på dess namn, t.ex. typen 'valfritt' gör egenskaperna valfria, 'skrivskyddad' deklarerar fältet som skrivskyddat och så vidare.

Den här guiden förklarar verktygstypen 'Omit' i TypeScript.

Vad är utelämnandetypen i TypeScript?

den ' Utelämna ” verktygstyp skapar en ny typ genom att utesluta bastypens onödiga egenskaper. Bastypen representerar den befintliga typen från vilken den nya typen härrör.







Syntax



skriv NewType = Utelämna < ExistingType, 'PropertyName1' | 'PropertyName2' | ... >

Ovanstående syntax kan ' Utelämna ' flera egenskaper för ' ExistingType ” genom att separera dem med hjälp av ” ELLER (|)” operatör.



Låt oss praktiskt använda den ovan definierade 'Omit'-verktygstypen.





Exempel 1: Användning av 'Uteslut' med Typalias

Det här exemplet använder verktygstypen 'Omit' för att skapa en ny typ från den befintliga typen.



Koda

Kopiera den givna kodraden i '.ts'-filen för TypeScript-projektet:

typ Användare = {
namn : sträng,
ålder : siffra,
plats : sträng
} ;

skriv UserWithoutAge = Utelämna < Användare, 'ålder' >;

konst användare utan brist : Användare Utan Ålder = {

namn : 'Eller' ,

plats : 'Islamabad'

} ;

trösta. logga ( användare utan brist ) ;

I denna kod:

  • den ' Användare ”-typ definieras med de angivna egenskapernas namn, ålder och plats.
  • Därefter ' Användare Utan Ålder ” skapas en ny typ från den befintliga ”Användar”-typen genom att exkludera dess ”ålder”-egenskap med hjälp av ” Utelämna ' verktygstyp.
  • Efter det, ett objekt ' användare utan brist ” av typen ”UserWithoutAge” skapas som specificerar alla fält av den befintliga typen ”User” förutom ”åldern”.
  • Slutligen, ' console.log() ”-metoden används för att visa objektet “userwithoutage”.

Produktion

Kompilera '.ts'-filen och kör den automatiskt genererade '.js'-filen:

tsc huvud. js //Compile.ts-fil

nod huvud. js //Kör .js-fil

Det kan ses att terminalen visar utdata från det nya objektet 'UserWithoutAge'.

Exempel 2: Användning av 'Omit' Typ med gränssnitt

Det här exemplet tillämpar verktygstypen 'Omit' med gränssnitt för att skapa en ny typ.

Koda

gränssnitt Användare {

namn : sträng ;

ålder : siffra ;

plats : sträng ;

}

skriv NewPerson = Utelämna < Användare, 'ålder' | 'plats' >;

konst person : Ny person = {

namn : 'Eller'

} ;

trösta. logga ( person ) ;

Nu, de angivna kodraderna:

  • Definiera ett gränssnitt ' Användare ” med följande egenskaper namn, sträng och plats.
  • Skapa sedan en ny typ ' Ny person ' från det befintliga gränssnittet 'Användare' exklusive dess specificerade egenskaper ålder och plats.
  • Efter det skapar du den nya typen 'NewPerson'-objekt med namnet ' person ” som endast anger en egenskap, dvs. ”namn” på befintligt gränssnitt ”Användare”.
  • Till sist, visa 'person'-objektets fält med hjälp av ' console.log() 'metoden.

Produktion

Kompilera och kör koden:

tsc huvud. js //Compile.ts-fil

nod huvud. js //Kör .js-fil

Terminalen visar endast ett egenskapsvärde av den nya typen 'NewPerson' som anges i dess objekt.

Exempel 3: Använda 'Omit' Skriv med funktion()

Det här exemplet använder typen 'Omit' med en funktion för att returnera objektet för ett gränssnitt som angetts som dess argument genom att utelämna några egenskaper hos det befintliga gränssnittet.

Koda

gränssnitt Användare {

namn : sträng ;

ålder : siffra ;

plats : sträng ;

}

funktionen getUserDetails ( ny användare : Utelämna < Användare, 'namn' | 'plats' > ) : siffra {

lämna tillbaka ( ny användare. ålder )

}

konst ny användare : Användare = {

ålder : 40 ,

namn : 'Eller' ,

plats : 'Islamabad'

} ;

konst användardetaljer = getUserDetails ( ny användare ) ;

trösta. logga ( användardetaljer ) ;

Ovanstående kodavsnitt:

  • Skapa först ett gränssnitt ' Användare ” med namn, ålder och platsegenskaper.
  • Därefter definierar du ett funktionsnamn ' getUserDetails() ' som utelämnar egenskaperna 'namn' och 'plats' av typen 'nyanvändare' för det befintliga gränssnittet, dvs. 'Användare'.
  • Denna funktion returnerar ett numeriskt värde, dvs användarens 'ålder'.
  • Skapa nu ett objekt av ' ny användare ' i gränssnittet 'Användare' för att ange dess egenskapsvärden.
  • Efter det, anrop den definierade 'getUserDetails()'-funktionen och skickar 'newuser'-objektet som dess parameter med hjälp av ' användardetaljer ' konstant.
  • Till sist, visa 'userDeatils' -utgången via ' console.log() 'metoden.

Produktion

tsc huvud. js //Compile.ts-fil

nod huvud. js //Kör .js-fil

Terminalen visar bara ' ålder ' egenskapsvärde eftersom 'namn' och 'plats' är uteslutna genom verktygstypen 'Uteslut'.

Slutsats

I TypeScript, verktygstypen ' Utelämna ” tar den befintliga typen som sin första parameter och skapar en ny typ genom att exkludera några egenskaper av den befintliga typen. Denna verktygstyp hjälper till att duplicera en befintlig typ för att skapa en ny typ som har några av dess egenskaper istället för att skapa den nya typen från början. Det kan appliceras med 'typ'-alias, gränssnitt och funktioner. Den här guiden förklarade djupt verktygstypen 'Omit' i TypeScript.