Sisällysluettelo[Piilottaa][Näytä]
- 1. Mikä TypeScript oikein on ja miten se eroaa JavaScriptistä?
- 2. Mitkä ovat TypeScriptin merkittäviä ominaisuuksia?
- 3. Mitä hyötyä TypeScriptin käytöstä on?
- 4. Mitä haittoja TypeScriptin käytössä on?
- 5. Mitä TypeScriptin komponentit tarkalleen ottaen ovat?
- 6. Voitko selittää TypeScriptin liitännät?
- 7. Mitä ovat TypeScriptin muuttujat ja miten ne ilmoitetaan eri tavoilla?
- 8. Miten rajapinnan osajoukkoa voidaan käyttää uuden tyypin luomiseen?
- 9. Mitä tarkoitat "millä tahansa" tyypeillä ja milloin minun pitäisi käyttää niitä?
- 10. Miten TypeScript on kieli, jossa on valinnainen staattisesti kirjoitettu syntaksi?
- 11. Mitä moduulit tarkoittavat TypeScriptissä?
- 12. Miten "enums" toimii TypeScriptissä?
- 13. Mikä erottaa sisäisen moduulin ulkoisesta moduulista?
- 14. Mitä TypeScriptin anonyymi funktio tarkoittaa?
- 15. Mikä on TypeScriptissä nimiavaruus ja miten se määritellään?
- 16. Mitä käyttöoikeusmuutoksia TypeScript tukee?
- 17. Salliiko TypeScript toimintojen ylikuormituksen?
- 18. Miten TypeScript sallii valinnaiset argumentit funktioissa?
- 19. Miten var, let ja const vaihtelevat toisistaan?
- 20. Kuvaile sisustajia TypeScriptissä?
- 21. Mitä Mixins tarkoittaa TypeScriptissä?
- 22. Mitä tyyppialiakset oikein ovat TypeScriptissä?
- 23. Mitä termi "laajuusmuuttuja" tarkoittaa?
- 24. Mihin tarkalleen noImplicitAny käytetään?
- 25. Miten liitos- ja risteystyypit vaihtelevat toisistaan?
- 26. Miten määrität TypeScript Declare -avainsanan?
- 27. Mitä ovat TypeScriptissä yleismerkit?
- 28. Mitä JSX tarkoittaa TypeScriptissä?
- 29. Mitä TypeScript-ympäristöt ovat ja milloin minun tulee käyttää niitä?
- 30. Mitä tarkoitat abstraktilla luokalla TypeScriptissä?
- 31. Mikä TypeScript Map -tiedosto tarkalleen ottaen on?
- 32. Mitä ovat TypeScript-tyyppiset väitteet?
- Yhteenveto
Microsoft kehitti TypeScript-ohjelmointikielen ja tukee sitä edelleen. Staattisen kirjoittamisen lisättynä vaihtoehtona se on JavaScriptin syntaktinen superjoukko.
Laajamittainen sovelluskehityskieli TypeScript kokoaa JavaScriptin. Koska TypeScript on JavaScriptin pääjoukko, JavaScriptillä kirjoitetut ohjelmat ovat myös voimassa TypeScriptissä.
Tässä on kattava luettelo tyypillisimmistä TypeScript-kehittäjähaastattelun kysymyksistä ja vastauksista, jos olet mukana.
1. Mikä TypeScript oikein on ja miten se eroaa JavaScriptistä?
JavaScriptin superjoukko, TypeScript käännetään tavalliseen JavaScriptiin. Käsitteellisestä näkökulmasta TypeScript ja JavaScript ovat samanlaisia kuin SASS ja CSS.
Toisin sanoen TypeScript on ES6 JavaScript, jossa on muutama lisäominaisuus. JavaScript on skriptikieli, joka muistuttaa enemmän Pythonia, kun taas TypeScript on oliosuuntautunut, staattisesti kirjoitettu kieli, joka on verrattavissa Javaan ja C#:aan.
Luokat ja käyttöliittymät ovat kaikki osa TypeScriptin oliopohjaista suunnittelua, ja tyyppipäättely on yksi monista käytettävissä olevista työkaluista sen staattisen kirjoituksen ansiosta.
JavaScript kirjoitetaan tiedostoon, jonka tunniste on .js, kun taas TypeScript kirjoitetaan tiedostoon, jonka tunniste on .ts.
Toisin kuin JavaScript, TypeScript-koodia ei voi ajaa suoraan selaimessa tai millään muulla alustalla, eivätkä selaimet ymmärrä sitä. Kohdealusta suorittaa sitten tavallisen JavaScriptin, joka on luotu .ts-tiedostoista TypeScriptin transpilerillä.
2. Mitkä ovat TypeScriptin merkittäviä ominaisuuksia?
- Staattinen kirjoittaminen on TypeScriptin ominaisuus, joka auttaa tyyppitarkistusta kääntämisen aikana. Joten jopa ilman komentosarjan suorittamista, voit havaita virheet koodissa sitä kirjoittaessasi.
- DOM:ia voidaan muuttaa TypeScriptillä kohteiden lisäämiseksi tai poistamiseksi.
- Kaikissa käyttöjärjestelmissä, mukaan lukien Windows, macOS ja Linux, voidaan asentaa TypeScript-kääntäjä.
- Luokat, rajapinnat ja moduulit ovat joitakin TypeScriptin tarjoamia toimintoja. Siten se voi luoda oliopohjaista koodia sekä asiakas- että palvelinpuolen kehittämiseen.
- Suurin osa ECMAScript 2015:n (ES 6, 7) ominaisuuksista sisältyy jo TypeScriptiin, mukaan lukien luokka, käyttöliittymä, nuolitoiminnot jne.
- Jos käytät JavaScriptin dynaamista kirjoittamista, TypeScript tukee myös valinnaista staattista kirjoittamista.
3. Mitä hyötyä TypeScriptin käytöstä on?
- Mikä tahansa JavaScript-moottori tai selain voi suorittaa TypeScriptin, koska se on nopea, helppo oppia ja toimii nopeasti.
- Sillä on sama syntaksi ja semantiikka kuin JavaScriptillä.
- Tämä helpottaa taustakehittäjien nopeampaa käyttöliittymäkoodin kirjoittamista.
- Se sisältää ES6- ja ES7-ominaisuudet, jotka voivat toiminto JavaScriptissä ES5-moottorit, kuten Node.js.
- Olemassa olevia JavaScript-kirjastoja, kuten Jquery, D3.js jne., tuetaan Definition-tiedoston kautta, jonka tunniste on.d.ts.
- Jo olemassa oleva JavaScript-komentosarja voi kutsua TypeScript-koodin. Se integroituu myös saumattomasti nykyisten JavaScript-kehysten ja kirjastojen kanssa.
4. Mitä haittoja TypeScriptin käytössä on?
- Koodaus TypeScriptillä vaatii pitkän käännösprosessin.
- Se ei tue luokkia, jotka ovat abstrakteja.
- Tyyppimääritystiedostojen laatu on ongelma.
- Kaikissa kolmannen osapuolen kirjastoissa on oltava määritystiedosto, jotta niitä voidaan käyttää.
- Käännösvaihe on tarpeen TypeScriptin muuntamiseksi JavaScriptiksi, jos haluamme suorittaa TypeScript-sovelluksen selaimessa.
- Web-kehittäjät ovat käyttäneet JavaScriptiä useiden vuosien ajan, eikä TypeScript tarjoa mitään uutta.
5. Mitä TypeScriptin komponentit tarkalleen ottaen ovat?
TypeScriptissä on kolme pääkomponenttiluokkaa, mukaan lukien:
- Kieli: Se sisältää merkinnät tyypin, avainsanojen ja syntaksin osalta.
- TypeScript-kääntäjä: Tämä kääntäjä (tsc) kääntää TypeScript-ohjeet JavaScriptiksi.
- TypeScript-kielipalvelu: Kielipalvelu tarjoaa editorin kaltaisia sovelluksia toisena kerroksena peruskääntäjäprosessin päälle. Kielipalvelu tukee tavallisia muokkaustoimintoja.
6. Voitko selittää TypeScriptin liitännät?
TypeScript käyttää rajapintoja määrittääkseen entiteettien syntaksin. Toisin sanoen tietomuotoja, kuten objekteja tai kohteiden joukkoa, voidaan kuvata rajapintojen avulla. Liittymien ilmoittamiseen käytetään rajapinta-avainsanaa, käyttöliittymän nimeä ja sen määritelmää. Tarkastellaan käyttäjäobjektin peruskäyttöliittymää.
Muuttujan tyyppi voidaan sitten asettaa käyttöliittymän avulla (samalla tavalla kuin määrität muuttujalle primitiivityyppejä). Käyttöliittymän ominaisuudet täyttävät sitten User-tyyppinen muuttuja.
TypeScript-projektisi hyötyy käyttöliittymistä, koska ne tarjoavat yhtenäisyyttä. Lisäksi rajapinnat parantavat projektisi työkaluja parantamalla IDE:n automaattisen täydennyksen ominaisuuksia ja takaamalla, että rakentajille ja menetelmille toimitetaan oikeat arvot.
7. Mitä ovat TypeScriptin muuttujat ja miten ne ilmoitetaan eri tavoilla?
Muuttuja on erityisesti määritetty muistialue, jota käytetään arvojen säilyttämiseen. Kaksoispiste (:) sijoitetaan muuttujan nimen jälkeen ja sitä seuraa tyyppi, kun muuttuja määritetään TypeScriptissä. Ilmoitamme muuttujat avainsanalla var, aivan kuten JavaScriptissä.
Tiettyjä ohjeita on noudatettava, kun muuttuja ilmoitetaan konekirjoituksessa:
- Nimi ei voi alkaa numerolla.
- Muuttujan nimen tulee sisältää kirjaimia tai numeroita.
- Dollarisymboli ($) ja alaviiva (_) ovat ainoat erikoismerkit, jotka ovat sallittuja tässä kentässä.
8. Miten rajapinnan osajoukkoa voidaan käyttää uuden tyypin luomiseen?
Antamalla olemassa olevan tyypin tai käyttöliittymän ja valitsemalla avaimet, jotka suljetaan pois uudesta tyypistä, voit luoda uuden tyypin TypeScriptissä käyttämällä apuohjelman tyyppiä pois.
Seuraava esimerkki osoittaa, kuinka luodaan uusi tyyppi nimeltä UserPreview, joka perustuu käyttöliittymään mutta ei sisällä sähköpostiominaisuutta.
9. Mitä tarkoitat "millä tahansa" tyypeillä ja milloin minun pitäisi käyttää niitä?
Joskus joudut tallentamaan arvon muuttujaan, mutta et ole etukäteen varma muuttujan tyypistä. Arvo voi olla peräisin esimerkiksi käyttäjän syötteestä tai API-pyynnöstä. Voit antaa minkä tahansa tyyppisen arvon muuttujatyypille käyttämällä "mikä tahansa" -tyyppiä.
Kun muuttujan tyyppiä ei ole erikseen määritelty eikä kääntäjä pysty määrittämään sitä kontekstista, TypeScript uskoo, että muuttuja on tyyppiä mikä tahansa.
10. Miten TypeScript on kieli, jossa on valinnainen staattisesti kirjoitettu syntaksi?
On mahdollista ohjeistaa kääntäjää jättämään huomioimatta muuttujan tyyppi TypeScriptissä, koska se on valinnaisesti kirjoitettu staattisesti. Mitä tahansa tietotyyppiä voidaan käyttää minkä tahansa arvon määrittämiseen muuttujalle. Käännettäessä TypeScript ei tarjoa virheentarkistusta.
11. Mitä moduulit tarkoittavat TypeScriptissä?
On tehokasta ryhmitellä olennaiset muuttujat, funktiot, luokat, rajapinnat jne. moduuleilla. Sitä voidaan käyttää, mutta ei globaalissa laajuudessa, vain oman laajuutensa sisällä.
Pohjimmiltaan moduulin määritettyjä muuttujia, funktioita, luokkia ja liitäntöjä ei voida käyttää suoraan moduulin ulkopuolelta.
Vientiavainsanalla voidaan rakentaa moduuli, kun taas tuontiavainsanalla voidaan sisällyttää moduuli toiseen moduuliin.
12. Miten "enums" toimii TypeScriptissä?
Eräs menetelmä nimettyjen vakioiden joukon määrittämiseksi on käyttää enumeita tai lueteltuja tyyppejä. Näillä tietorakenteilla on kiinteä pituus ja joukko kiinteitä arvoja.
Kun esitetään kokoelma vaihtoehtoja tietylle arvolle TypeScriptissä, enumeita käytetään usein kuvaamaan mahdollisuuksia käyttämällä avain/arvo-pareja.
Katsotaanpa esimerkkiä enumista, jota käytetään tarjoamaan erilaisia käyttäjätyyppejä.
TypeScript muuntaa enumit sisäisesti tavallisiksi JavaScript-objekteiksi kääntämisen jälkeen. Enumien käyttö on siksi parempi kuin useiden erillisten const-muuttujien käyttö.
Koodisi on tyyppiturvallinen ja helpompi ymmärtää enumien tarjoaman ryhmittelyn ansiosta.
13. Mikä erottaa sisäisen moduulin ulkoisesta moduulista?
Sisäinen moduuli:
- Sisäiset moduulit olivat Typescriptin edellisen iteroinnin ominaisuus.
- Sisäisten moduulien nimet ja runko määritellään ModuleDeclarations-sovelluksella.
- Nämä ovat muiden paikallisten tai vietyjen moduulien jäseniä.
- Luokat, rajapinnat, funktiot ja muuttujat on ryhmitelty sisäisiin moduuleihin, jotka voidaan viedä toiseen moduuliin.
Ulkoinen moduuli:
- Uusimmassa versiossa ulkoisia moduuleja kutsutaan moduuleiksi.
- Niiden luomiseen käytetään erillistä lähdetiedostoa, joka tunnetaan nimellä ulkoinen moduuli, ja jokaisessa on vähintään yksi tuonti- tai vienti-ilmoitus.
- Uusimmassa versiossa ulkoisia moduuleja kutsutaan moduuleiksi.
- Moduulimäärittelyjen sisäiset käskyt voidaan piilottaa ulkoisten moduulien avulla, jolloin vain määritettyyn muuttujaan liittyvät metodit ja argumentit jäävät näkyviin.
14. Mitä TypeScriptin anonyymi funktio tarkoittaa?
Anonyymeiksi luokitelluista funktioista puuttuu funktion nimi tunnisteena. Nämä rutiinit määritellään dynaamisesti ajon aikana. Kuten tavalliset funktiot, anonyymit funktiot voivat ottaa syötteitä ja tuottaa tuloksia.
Nimettömään toimintoon ei yleensä saada yhteyttä, kun se on luotu. Muuttujia voidaan määrittää anonyymille funktiolle.
15. Mikä on TypeScriptissä nimiavaruus ja miten se määritellään?
Nimiavaruus ryhmittelee loogisesti toimintoja. Nämä säilyttävät sisäisesti konekirjoituskoodin. Se kattaa piirteet ja asiat, joilla on erityisiä yhteyksiä.
Toinen nimiavaruuden nimi on sisäinen moduuli. Liitännät, luokat, funktiot ja muuttujat voidaan sisällyttää nimiavaruuteen kokoelman yhdistettyjä toimintoja varten.
16. Mitä käyttöoikeusmuutoksia TypeScript tukee?
Seuraavassa on esimerkkejä siitä, kuinka TypeScriptin julkisia, yksityisiä ja suojattuja käyttöoikeuksia voidaan käyttää ohjaamaan luokan jäsenen saavutettavuutta:
- Julkinen – Pääsy on kaikkien luokan jäsenten, kaikkien sen jälkeläisten luokkien ja luokan jokaisen esiintymän käytettävissä.
- Suojattu – ne ovat kaikkien luokan jäsenten ja sen alaluokkien käytettävissä. Luokan ilmentymä ei kuitenkaan voi käyttää sitä.
- Yksityinen pääsy niihin on rajoitettu vain luokan jäsenille.
Koska JavaScript on kätevä, jos pääsyn muokkaajaa ei ole annettu, sen oletetaan olevan julkinen.
17. Salliiko TypeScript toimintojen ylikuormituksen?
Kyllä, TypeScript tukee toimintojen ylikuormitusta. Mutta nyt se on outoa. Siksi, kun ylikuormitetaan TypeScriptillä, käytössä on vain yksi toteutus, jossa on erilaisia allekirjoituksia.
Vaikka toinen allekirjoitus sisältää parametrin tyyppiä tekstiä, ensimmäinen allekirjoitus on vain yksi parametri tyyppiä numero. Kolmas funktio, joka sisältää argumentin tyyppiä any, sisältää varsinaisen toteutuksen.
Toteutus määrittää sitten tarjotun parametrin tyypin ja suorittaa erillisen koodiosan tämän määrityksen mukaisesti.
18. Miten TypeScript sallii valinnaiset argumentit funktioissa?
Toisin kuin JavaScript, jos yrität kutsua funktiota määrittämättä sen funktion allekirjoituksessa ilmoitettua tarkkaa määrää ja parametrien tyyppejä, TypeScript-kääntäjä aiheuttaa virheen.
Voit käyttää valinnaisia parametreja käyttämällä kysymysmerkkisymbolia ('?') kiertääksesi tämän ongelman. Se osoittaa, että valinnaiset parametrit voidaan merkitä lisäämällä "?" niille, jotka saavat tai eivät saa arvoa.
19. Miten var, let ja const vaihtelevat toisistaan?
TypeScript tarjoaa kolme erilaista tapaa ilmoittaa muuttuja, joista jokaisella on ehdotettu sovellus.
oli: Ilmoittaa globaalin tai funktion laajuisen muuttujan JavaScriptin muuttujien käyttäytymisen ja laajuusohjeiden kanssa. Muuttujien arvoja ei tarvitse asettaa, kun ne ilmoitetaan.
päästää: ilmoittaa paikallisesti laajennetun lohkomuuttujan. Anna muuttujien ei tarvitse asettaa muuttujan arvoa, kun ne ilmoitetaan. Termi "lohkolaajuinen paikallinen muuttuja" viittaa muuttujaan, johon pääsee vain sen lohkon sisältä, johon se sisältyy, kuten funktioon, if/else-lohkoon tai silmukkaan. Muuttujia ei voida lukea tai kirjoittaa ennen kuin ne on ilmoitettu, toisin kuin var.
const: Ilmoittaa lohkon laajuiselle vakiolle arvon, jota ei voi muuttaa sen alustamisen jälkeen. Const-muuttujat on alustettava ennen ilmoittamista. Muuttujille, jotka pysyvät vakioina koko olemassaolonsa ajan, tämä on optimaalinen.
20. Kuvaile sisustajia TypeScriptissä?
Aksessori, ominaisuus, parametri, luokka, toiminto tai sisustaja voidaan kaikki ilmoittaa tietyllä tavalla sisustajiksi. Koristelijat ovat toimintoja, joissa on @expression-etuliite ja joita kutsutaan suorituksen aikana koristellun ilmoituksen yksityiskohdilla.
Lausekkeen on arvioitava funktio, jotta sisustajat voivat toimia.
TypeScript-sisustajien tavoitteena on lisätä huomautuksia ja tietoja nykyiseen koodiin.
Sinun on aktivoitava experimentalDecorators-kääntäjä tsconfig.json-tiedostossamme tai komentorivillä, jotta voit ottaa käyttöön kokeellisen tuen sisustajille:
21. Mitä Mixins tarkoittaa TypeScriptissä?
Mixins on tekniikka, jolla luodaan luokkia uudelleenkäytettävistä Javascriptin osista ja sekoitetaan osittaisia luokkia monimutkaisempien kokonaisten luokkien luomiseksi.
Konsepti on yksinkertainen: funktio B hyväksyy luokan A ja palauttaa uuden luokan, johon on lisätty toiminnallisuus, toisin kuin luokka A laajentaa luokkaa B saadakseen sen toiminnallisuuden. Funktio B on tässä tapauksessa mixin.
22. Mitä tyyppialiakset oikein ovat TypeScriptissä?
Tyyppialiakset muuttavat tyypin nimeä. Tyyppialiaksia, kuten käyttöliittymiä, voidaan käyttää nimeämään primitiivit, liitot, monikot ja kaikki muut tyypit, jotka muuten olisi määriteltävä käsin.
Aliasointi ei luo uutta tyyppiä; pikemminkin se muuttaa olemassa olevan tyypin nimeä. Primitiivin alias ei ole käytännöllistä, vaikka siitä voi olla hyötyä dokumentoinnissa.
Tyyppialiakset, kuten rajapinnat, voivat olla yleisiä; sinun tarvitsee vain lisätä tyyppiparametrit ja käyttää niitä alias-ilmoituksen oikealla puolella.
23. Mitä termi "laajuusmuuttuja" tarkoittaa?
JavaScript tukee sekä paikallisia että globaaleja laajuusmuuttujia. Laajuus on kokoelma objekteja, muuttujia ja toimintoja.
Esimerkki muuttujan ilmoittamisesta kahdessa laajuudessa on:
- Muuttuja paikallisella laajuudella – Se toimii funktioobjektina käytettäväksi funktioissa.
- Muuttuja, jolla on yleinen laajuus – Tätä ikkunaobjektia voidaan käyttää sekä funktioissa että niiden ulkopuolella
24. Mihin tarkalleen noImplicitAny käytetään?
TypeScript-kääntäjän projektisi implisiittisten minkä tahansa tyyppien käsittelyä muuttaa TypeScript-projektien tsconfig.json-määritystiedoston noImplicitAny-ominaisuus.
NoImplicitAny-lippu voidaan asettaa arvoon tosi tai epätosi, ja se on aina vaihdettavissa alustuksen jälkeen. Koska jokainen projekti on ainutlaatuinen, ei ole oikeaa tai väärää vastausta siihen, mikä tämän numeron tulisi olla.
Lipun päällä- ja poiskytkentätilojen erojen ymmärtäminen voi auttaa sinua valitsemaan lipulle käytettävän asetuksen.
Kääntäjä ei määritä muuttujan tyyppiä sen käyttötavan perusteella, jos noImplicitAny-lipun arvoksi on asetettu epätosi (oletus). Kääntäjä asettaa tyypiksi oletuksena minkä tahansa tyypin.
Jos noImplicitAny-asetus on kuitenkin tosi, kääntäjä yrittää päätellä tyypin ja aiheuttaa käännösaikavirheen, jos se ei pysty tekemään niin.
25. Miten liitos- ja risteystyypit vaihtelevat toisistaan?
Sen sijaan, että luot uusia lajeja tyhjästä, liitot ja risteystyypit antavat sinun luoda ja sekoittaa olemassa olevia tyyppejä. Sekä liitolla että risteyksellä on erottuvia ominaisuuksia, jotka tekevät niistä täydellisen tiettyihin käyttötapauksiin.
Tyyppiä, joka voi olla yksi useista tyypeistä, kutsutaan liittotyypiksi. Uudessa tyypissä käytettävien tyyppien luettelo on jaettu | (pystypalkki) -symboli liitostyypeissä.
Katsotaanpa esimerkkiä:
Toisaalta risteys määritellään tyypiksi, joka yhdistää useita tyyppejä yhdeksi integroimalla kunkin tyypin kaikki ominaisuudet uudeksi tyypiksi. Luettelo yhdistettävistä tyypeistä on jaettu risteyksiin &-symbolilla.
Tarkastellaanpa esimerkkiä:
26. Miten määrität TypeScript Declare -avainsanan?
JavaScript-kirjastoissa tai kehyksissä ei ole TypeScript-määritystiedostoja. Sinun on kuitenkin käytettävä deklarointiavainsanaa, jotta voit käyttää niitä TypeScript-tiedostossa ilman käännösvirheitä.
Kun haluat määrittää muuttujan, joka voi jo olla jossain muualla, käytä ambient-määrittelyissä ja -metodeissa deklaraatio-avainsanaa.
27. Mitä ovat TypeScriptissä yleismerkit?
TypeScript Generics -niminen työkalu tarjoaa menetelmän uudelleenkäytettävien osien tuottamiseen. Sen sijaan, että se käyttäisi vain yhtä datamuotoa, se voi kehittää komponentteja, jotka voivat toimia useiden tietotyyppien kanssa.
Lisäksi se tarjoaa tyyppiturvan tehokkuudesta tai tuottavuudesta tinkimättä. Voimme rakentaa geneerisiä luokkia, yleisiä toimintoja, yleisiä menetelmiä ja yleisiä rajapintoja geneeristen ominaisuuksien ansiosta.
Yleiset ovat erittäin kirjoitettuja kokoelmia, koska tyyppiparametri kirjoitetaan avointen () ja sulkevien (>) hakasulkeiden väliin. Se käyttää ainutlaatuista tyyppimuuttujaa nimeltä T, joka tarkoittaa tyyppejä.
28. Mitä JSX tarkoittaa TypeScriptissä?
JSX on laillinen JavaScript, joka voidaan muuntaa upotettavasta XML-tyyppisestä syntaksista. React-kehyksen myötä JSX nousi suosioon.
TypeScript tukee JSX:n suoraa kääntämistä, tyypin vahvistusta ja upottamista JavaScriptiin. Sinun on annettava tiedostollesi a.tsx-tunniste ja aktivoitava JSX-vaihtoehto, jos haluat käyttää sitä.
29. Mitä TypeScript-ympäristöt ovat ja milloin minun tulee käyttää niitä?
Kääntäjä saa tiedon muualta löytyvästä todellisesta lähdekoodista ambient-ilmoitusten kautta.
Se katkeaa ilman ennakkoilmoitusta, jos yritämme käyttää näitä lähdekoodeja ajon aikana, mutta niitä ei ole. Asiakirjamaiset tiedostot ovat ambient-ilmoitustiedostoja.
Jos lähde muuttuu, dokumentaatio on päivitettävä, ja jos ympäristön ilmoitustiedostoa ei muuteta, seurauksena on kääntäjäongelmia.
Lisäksi sen avulla voimme hyödyntää tunnettuja JavaScript-kirjastoja, jotka ovat jo laajalti käytössä, kuten jQuery, AngularJS, NodeJS jne.
30. Mitä tarkoitat abstraktilla luokalla TypeScriptissä?
Abstraktit luokat määrittelevät objektin sopimuksen sallimatta suoraa objektin ilmentymistä. Abstrakti luokka voisi kuitenkin tarjota myös jäsenensä toteutustietoja.
Abstraktista luokasta löytyy yksi tai useampi abstrakti jäsen. Superluokan abstrakteilla jäsenillä tulee sitten olla minkä tahansa abstraktia luokkaa laajentavien luokkien tarjoama toteutus.
Katsotaanpa TypeScript-esimerkkiä abstraktista luokasta ja kuinka eri luokka voisi laajentaa sitä. Vaikka sekä auto- että pyöräluokat alla olevassa esimerkissä laajentavat ajoneuvoluokkaa, ne toteuttavat kukin drive()-toiminnon ainutlaatuisella tavalla.
31. Mikä TypeScript Map -tiedosto tarkalleen ottaen on?
TypeScript-karttatiedostoksi kutsuttu lähdekarttatiedosto sisältää tietoja alkuperäisistä tiedostoistamme. Lähdekarttatiedostot tai .map-tiedostot mahdollistavat työkalujen kartoituksen tulostetun JavaScript-koodin ja sen tuottaneiden TypeScript-lähdetiedostojen välillä.
Lisäksi virheenkorjaajat voivat kuluttaa näitä tiedostoja, jolloin voimme korjata TypeScript-tiedoston JavaScript-tiedoston sijaan.
32. Mitä ovat TypeScript-tyyppiset väitteet?
Vaikka tyypin vahvistus toimii samalla tavalla kuin typecasting muilla kielillä, kuten C# ja Java, se ei suorita tyypin vahvistusta tai tietojen uudelleenjärjestelyä.
Vaikka tyypin väittämisellä ei ole vaikutusta suoritusaikaan, tyypin suoratoisto tarjoaa tämän tuen. Toisaalta vain kääntäjä käyttää tyyppiväitteitä, ja ne antavat ohjeita siitä, kuinka haluamme koodimme tutkittavan.
Yhteenveto
Lopuksi toivomme, että näistä TypeScript-haastattelukysymyksistä on sinulle apua, olitpa sitten työhaastatteluun valmistautunut kehittäjä tai rekrytointipäällikkö, joka yrittää löytää parhaan hakijan.
Muista, että rekrytointiprosessiin kuuluu muutakin kuin tekninen asiantuntemus. Aiemmat kokemukset ja pehmeät taidot ovat yhtä tärkeitä, jotta saat tehtävän (tai löydät sopivan hakijan).
Monet TypeScript-haastattelukysymykset ovat avoimia, eikä niihin ole yhtä oikeaa vastausta, joten pidä se mielessä.
Haastattelijat ovat kiinnostuneita vastaustesi perusteista.
Ole aina valmis seuraaviin tiedusteluihin, joissa kerrotaan, miten sait vastauksesi. Kuvaile ajatteluprosessiasi.
Jätä vastaus