Mikä on TypeScriptin Omitin vastakohta?

Mika On Typescriptin Omitin Vastakohta



Kun suoritusprosessiin tarvitaan vain tiettyjä käyttöliittymän ominaisuuksia, ei-toivotuista ominaisuuksista tulee suurin syy heikon suorituskyvyn kannalta, koska ne vievät nyt vain tilaa. JavaScriptissä ei ole mahdollista sulkea pois käyttöliittymän tarpeettomia ominaisuuksia suoritushetkellä. Onneksi! Tätä heikkoa kohtaa tai käyttötapausta käsittelee TypeScript, koska se tarjoaa 'Omit'- ja 'Pick'-tyyppisiä apuohjelmia, jotka auttavat paljon vain tiettyjen ominaisuuksien valinnassa.

Tämä blogi selittää poistumistyypin ja sen vastakohdan TypeScriptissä kattamalla nämä osat:







  • Mikä on Tyypin jättäminen TypeScriptissä?
  • Mikä on TypeScriptin ohitustyypin vastakohta?

Mikä on Tyypin jättäminen TypeScriptissä?

TypeScript 'Jättää pois' type luo uuden käyttöliittymän tarjotuista '' ja ohittaa tai sulkee pois kiinteistöt, jotka tarjotaan muodossa 'Avain' . Se ottaa ja käsittelee kaikkien muiden ominaisuuksien arvot, eikä hyväksy arvoja ominaisuuksille, jotka välitetään nimellä 'Avain' . Yksinkertaisesti sanottuna 'Jättää pois' Tyyppi sulkee pois ominaisuudet, jotka välitetään 'avaimella', ja muut ominaisuudet pysyvät samoina.



Syntaksi
TypeScriptin Omit Typen syntaksi on ilmoitettu alla:



Jättää pois < demotyyppi, avain1 | avain 2 >

Missä 'demotyyppi' on käyttöliittymä, jonka 'avain1' ja 'avain2' ominaisuudet lisätään uuteen 'tyyppi' joka luodaan kautta 'Jättää pois' .





Esimerkki ymmärtää 'Jättää pois' tyyppi on ilmoitettu alla:

tyyppi linuxhintType = {
fName: merkkijono;
lNimi: merkkijono;
ikä: numero;
}

tyyppi newType = Ohita;

const-kohtainen: newType = {
fName: 'John' ,
lNimi: 'Doe'
} ;

console.log ( tietty.ikä, erityinen.fNimi ) ;

Selitys yllä olevalle koodille:



  • Ensinnäkin 'tyyppi' nimetty 'linuxhintType' on määritelty, joka sisältää useita nimettyjä ominaisuuksia 'fName' , 'Nimi' , ja 'ikä' sen sisällä.
  • Seuraavaksi, 'Jättää pois' käytetään tyyppiä, joka kestää 'linuxhintType' ensimmäisenä argumenttina ja avaimena 'ikä' . Tämä poisto hakee kaikki ominaisuudet kohteesta 'linuxhintType' ja sulkee pois vain 'ikä'-ominaisuuden.
  • 'Omit'-tyypin kautta haetut ominaisuudet tallennetaan uuteen 'tyyppi' nimetty 'uusi tyyppi' .
  • Sitten luodaan uusi muuttuja, jonka tyyppimerkintä on 'uusi tyyppi' ja muiden ominaisuuksien arvot asetetaan.
  • Tämän jälkeen jäljellä olevat ja poissuljetut ominaisuudet haetaan uuden muuttujan avulla ja näytetään konsoli-ikkunassa vahvistusta varten.

Kokoamisen jälkeen konsoli-ikkuna näyttää tältä:

Konsoli-ikkunan tilannekuva näyttää, että poissuljettuja tietoja käytettäessä on syntynyt tyyppivirhe 'ikä' omaisuutta. Jos haluat lisätietoja 'Omit'-tyypistä, voit vierailla liitännällä artikla

Mikä on TypeScriptin ohitustyypin vastakohta?

TypeScriptissä päinvastoin 'Jättää pois' on 'Valita' tyyppi. Tämä tyyppi valitsee tai poimii tietyt kiinteistöt, jotka ovat käytettävissä, ja kaikki jäljellä olevat kiinteistöt, joita ei ole valittu, suljetaan pois. Eli täysin päinvastoin kuin 'Jättää pois' tyyppi. Se vaatii kaksi samaa argumenttia 'Tyyppi' ja 'Avain' missä 'Tyyppi' on käyttöliittymä tai luokka, jonka 'Avain' kiinteistöt ovat mukana ja loput jätetään pois. Jos kiinteistöjä on useita, jokainen kiinteistö erotetaan käyttöasteen mukaan 'Liitto' operaattori '|'.

Syntaksi
TypeScriptin valintatyypin syntaksi on esitetty alla:

Valita < demotyyppi, avain1 | Avain2 | avain 3 >

Missä, 'demotyyppi' on käyttöliittymä, luokka tai tyyppi, jonka 'Key1' , 'Key2' , ja 'Key3' kiinteistöt poimitaan.

Käydään nyt läpi esimerkki paremman selvennyksen saamiseksi.

Esimerkki: Tiettyjen ominaisuuksien valitseminen

Tässä tapauksessa rajapinnan tai luokan tietyt ominaisuudet valitaan käyttämällä 'Pick'-tyyppiä, ja loput ominaisuudet jätetään kokonaan pois, kuten alla on esitetty:

käyttöliittymä linuxhintInter {
fName: merkkijono;
lNimi: merkkijono;
ikä: numero;
}
tyyppi newType = Valitse;
const-kohtainen: newType = {
fName: 'John' ,
lNimi: 'tosi' , ikä: 3. 4 } ;

Selitys yllä olevalle koodille:

  • Ensinnäkin käyttöliittymä 'linuxhintInter' luodaan sisältäen kolme ominaisuutta nimeltä 'fName' , 'Nimi' , ja 'ikä' .
  • Seuraavaksi, 'Valita' käytetään tyyppiä, joka ottaa liitännän ensimmäisenä parametrina, ja 'ikä' ja 'fName' toisena unionin operaattorin erottamana parametrina '|' .
  • Tämä 'Valita' type määrittää uuden tyypin nimeltä 'uusi tyyppi' joka sisältää vain 'ikä' ja 'fName' ominaisuuksia ja sulkee pois kaikki muut kiinteistöt, esim. 'Nimi' .
  • Aseta nyt tämä 'uusi tyyppi' 'tietyn' muuttujan tyypiksi ja yritä muokata kaikkia käyttöliittymän ominaisuuksia. Tämä aiheuttaa virheilmoituksen, koska vain tietyt ominaisuudet ovat käytettävissä.

Kääntämisen jälkeen konsoli-ikkuna näyttää tältä:

Yllä oleva tilannekuva näyttää virheen esiintymisen, koska ohjelma muokkaa ominaisuutta, joka ei sisälly tai ei ole käytettävissä valitussa tyypissä.

Olet oppinut tyypistä, joka toimii päinvastoin kuin TypeScriptin Omit.

Johtopäätös

Vastakohta 'Jättää pois' TypeScript-tyyppi on 'Valita' type, joka luo uuden tyypin, joka sisältää vain tarjotun ominaisuuden ja sulkee pois kaikki muut päärajapinnan ominaisuudet. Samalla kun 'Jättää pois' kirjoita TypeScriptissä, luo myös uusia tyyppejä, mutta sulkee pois kaikki tarjotut ominaisuudet ja hyväksyy tai sisältää muut ominaisuudet. Tämä artikkeli on osoittanut päinvastaisen kuin Tyypin jättäminen pois TypeScriptissä.