Nuolifunktiot ja kontekstuaalinen tyypitys
Käyttäkää nuolifunktioita sujuvasti ja tutustukaa siihen, miten kontekstuaalinen tyypitys päättelee parametri- ja paluutyypit käyttötavan perusteella.
Nuolifunktiot ja kontekstuaalinen tyypitys on ilmainen TypeScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/3. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu TypeScript Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. TypeScript Academy-kurssilla on yhteensä 3 oppituntia.
Miksi nuolifunktiot ja konteksti?
Nuolifunktiot tarjoavat tiiviin syntaksin ja leksikaalisen this-kontekstin. Kontekstuaalisen tyypityksen avulla TypeScript päättelee parametrien ja palautusarvojen tyypit käyttöyhteyden perusteella (esimerkiksi taulukkometodeissa), joten voitte kirjoittaa vähemmän toistokoodia turvallisuudesta tinkimättä.
Nuolifunktioiden perusteet
Merkitkää parametrit ja palautukset tyyppimerkinnöillä, kun se parantaa selkeyttä. Nuolifunktiot ovat tiiviitä ja säilyttävät ympäröivän this-kontekstin (toisin kuin funktioiden määrittelyt).
// Arrow syntax: parameters => expression/body
const greet = (name: string): string => {
return `Hello, ${name}`;
};
console.log(greet("Ada"));Konteksti map-funktion kautta
Kontekstuaalinen tyypitys: map tuntee alkion tyypin, joten nuolifunktion parametri päätellään tyypiksi number ja tulos tyypiksi number[].
// Context supplies types: numbers.map expects (n:number)=>number
const numbers = [1, 2, 3];
const doubled = numbers.map(n => n * 2); // n inferred as number
console.log(doubled);Päätellyt palautustyypit
Tyypitetyt API:t (Promise, taulukkometodit) ohjaavat parametrien ja palautusarvojen päättelyä, mikä vähentää eksplisiittisten tyyppimerkintöjen tarvetta.
// Promise.then infers the callback parameter and return type
const toLength = (s: string) => s.length;
Promise.resolve("TS")
.then(s => toLength(s)) // s inferred as string
.then(len => console.log(len));Valinnaiset parametrit ja oletusarvot
Nuolifunktiot tukevat oletus- ja valinnaisia parametreja. Kaventakaa tyyppiä tai antakaa vara-arvo (esimerkiksi ??) ennen valinnaisten parametrien käyttöä.
// Optional + default with arrows
const padLeft = (text: string, width = 2, ch?: string): string => {
const fill = (ch ?? " ").repeat(Math.max(0, width));
return fill + text;
};
console.log(padLeft("X")); // default width 2, default char " "
console.log(padLeft("X", 4, "."));Sudenkuopat
Sudenkuopat:
- Liialliset tyyppimerkinnät heikentävät päättelyä; aloittakaa vähäisillä merkinnöillä.
- Olkaa eksplisiittisiä, kun API:t ovat tyypittämättömiä (any) tai tarkoitus on epäselvä.
- Muistakaa, että nuolifunktiot sitovat this-kontekstin leksikaalisesti – ne sopivat mainiosti callbackeihin, mutta välttäkää niitä, kun tarvitaan dynaamista this-kontekstia.
Kontekstuaalisen tyypityksen tarkistus
Pikatarkistus: Mitä kontekstuaalinen tyypitys tarkoittaa nuolifunktioiden yhteydessä?
Kertaus ja seuraava aihe
Kertaus: Nuolifunktiot tarjoavat tiiviin syntaksin ja leksikaalisen this-kontekstin. Kontekstuaalinen tyypitys ohjaa päättelyä käyttöyhteyden perusteella, joten callbackit pysyvät lyhyinä mutta tyyppiturvallisina.
Opi TypeScript tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 101
- Oppitunnit
- 352
Usein kysytyt kysymykset
Onko oppitunti ”Nuolifunktiot ja kontekstuaalinen tyypitys” ilmainen?
Kyllä – oppitunnin ”Nuolifunktiot ja kontekstuaalinen tyypitys” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko TypeScript Academy-kurssin, päivitä CoddyKit PROhon. TypeScript Academy-kurssilla on yhteensä 3 oppituntia.
Mitä opin oppitunnilla ”Nuolifunktiot ja kontekstuaalinen tyypitys”?
Käyttäkää nuolifunktioita sujuvasti ja tutustukaa siihen, miten kontekstuaalinen tyypitys päättelee parametri- ja paluutyypit käyttötavan perusteella. Harjoittelet TypeScript Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni TypeScript Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin TypeScript Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/3.
Kuinka kauan ”Nuolifunktiot ja kontekstuaalinen tyypitys”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä TypeScript Academy-oppitunnilla?
Kyllä. Jokainen TypeScript Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- If/else, switch, silmukat; totuusarvot ja tiukat tarkistukset
- Funktiot: parametrit, oletus-/valinnais-/rest-parametrit ja paluutyypit
- Nuolifunktiot ja kontekstuaalinen tyypitys