JavaScript Jargon 10 vilkår du bør vite
Fra currying til nedleggelser Det er ganske mange JavaScript-jargonger (spesielle ord som brukes innenfor feltet), og vet hva som ikke bare vil hjelpe deg å øke vokabularet ditt, men forstå JavaScript bedre.. Jargons finnes normalt i dokumentasjoner og tekniske artikler. Men noen av dem liker nedleggelser er ganske standard ting å vite om. Å vite hva ordet i seg selv betyr kan hjelpe deg å forstå konseptet det er oppkalt etter bedre.
Dette innlegget er samlingen av 10 slike vilkår med deres mening og konteksten der de brukes i i JavaScript. Hvis du er nybegynner, har denne listen fått deg dekket med det grunnleggende heising. Samtidig inngår også mindre kjente eller mindre forståelige vilkår.
- arity
- Anonym
- nedleggelse
- currying
- heising
- mutasjon
- Pragma
- Sentinel
- vanilje
- Variadic
1. Arity
arity (fra latin) er begrepet referert til antall argumenter eller operander i henholdsvis en funksjon eller en operasjon. Du er mest sannsynlig å komme over dette ordet i rike til JavaScript når det pleier å nevne Antall argumenter som forventes av en JavaScript-funksjon.
Det er enda en eiendom som heter arity, of the Funksjon
objekt som returnerer antall forventede argumenter i en funksjon. Det er nå foreldet og erstattet av lengde
.
Følgende funksjon har en aritet på 3.
funksjon getName (første, mellom, siste) return først + "+ midten +" + sist;
2. Anonym
Anonym er et adjektiv. Når noe eller noen er referert til som anonym betyr det at ting eller personens navn er uidentifisert. På samme måte i JavaScript er en anonym funksjon den som ikke er identifisert av et navn.
(funksjon () // kropp) ();
Over er en IIFE (Umiddelbart bekreftet funksjonsuttrykk). Funksjonen i den er anonym, siden den ikke har et navn. Nå, ta en titt på den nedenfor.
var foo = funksjon () ;
Det sies også å være en anonym funksjon siden det ikke er noe navn etter nøkkelordet funksjon
.
En liten smule tvil stiger i korrekt bruk av ordet “anonym”. Med IIFE blir funksjonen straks kalt, ingen navn er involvert, men for å kalle sistnevnte fungere syntaksen foo ()
benyttes.
Det er som om vi døde en navnløs funksjon med navnet "foo" og kalte det ved å bruke det. Regner det som anonym? Jeg vet ikke, jeg la det til de engelske ekspertene. Men min forvirring til side, de begge er faktisk referert til som anonym funksjon.
3. Lukking
Her er en av definisjonene fra oxford ordbok for nedleggelse: “En ting som lukker eller forsegler noe, for eksempel et hette eller slips.”
I JavaScript er lukking en indre funksjon, som er tilgjengelig utenfor dens ytre funksjon, med sin forbindelse til den ytre funksjonens variabler fortsatt intakt.
For å forklare ting (kanskje ikke nøyaktig, men bare nok), bør du vurdere nedleggelse som en kelner i en restaurant. Det skjer mange ting i et restaurantkjøkken, der vi ikke har lov til å gå inn eller se. Men hvordan skal vi da få maten vår?
Det er her servitører kommer inn. Vi kaller dem, bestiller maten, og så går de på kjøkkenet, informerer kokkene til ordrene, og hent det til oss når bestillingen er klar. På denne måten har vi ikke ødelagt noen “regler” og kan fortsatt klare å få tak i et måltid.
The waiter er noen som er i stand til å ta vår bestilling inn i kjøkkenet og returnere med maten. Javascript nedleggelser ligner på det de er i stand til ta våre parametre og ta med oss variabler (referanser til de variablene, for å være presise) fra innsiden av en funksjon som vi ikke er tillatt i.
funksjonsordre () var food; funksjon servitør (rekkefølge) kokk (rekkefølge); returnere mat; funksjonskokk (rekkefølge) hvis (ordre === 'pasta') mat = ['pasta', 'saus', 'krydder']; kokk(); funksjonskok () food.push ('cooked'); retur servitør; var myOrder = rekkefølge (); console.log (myOrder ( 'pasta')); // Array ["pasta", "saus", "krydder", "kokt"]
Som du kan se fra koden ovenfor, alt bortsett fra kelner
og dens returverdi fra innsiden av ordrefunksjonen er ikke utsatt for omverdenen.
4. Currying
Effekten, oppkalt etter Haskell Curry, refererer til bruker flere funksjoner med enkeltargumenter, i stedet for en enkelt funksjon med flere argumenter. La oss se Legg til
Fungerer nedenfor for eksempel.
funksjon addx (x) funksjon addy (y) return x + y; return addy funksjon legg til (x, y) return (x + y); console.log (addx (3) (4)); \\ 7 console.log (legg til (3,4)); \\ 7
Begge funksjonene gir samme resultat. Funksjonen addx
aksepterer en parameter x
mens du vender tilbake Addy
som igjen aksepterer y
verdi, utfører tillegget med x
og returnerer summen.
Funksjonen Legg til
tar bare begge deler x
og y
på samme tid utfører tillegget og returnerer summen. Så langt den første funksjonen kanskje ikke virker veldig nyttig, til ...
var add4 = addx (4); console.log (ADD4 (8)); // 12 console.log (add4 (6)); // 10 console.log (add4 (-74)); // - 70
Nå blir den tidligere funksjonen plutselig interessant. Ved currying kan du alltid fikse et trinn i en sekvens av operasjoner som tillegg av 4 fra koden ovenfor, noe som er nyttig når en av variablene som brukes i operasjonen alltid er den samme.
5. Heising
Hoist betyr å heve noe. heising i JavaScript betyr også det samme og det som blir hevet er erklæringen (variabel og funksjon deklarasjoner).
Erklæringer er hvor variabler og funksjoner er opprettet med søkeord Var
(ikke for global) og funksjon
.
Det spiller ingen rolle hvor du skriver inn koden for å erklære en funksjon eller variabel. Under evalueringen blir alle deklarasjonene flyttet opp innenfor rammen hvor de bor (unntatt i streng modus). Det er derfor mulig å skrive en arbeidskode med koden for funksjonsanrop plassert før funksjonen erklæring.
Var navn = 'Velma'; console.log (sayCatchPhrase (navn)); // "Jinkies!" funksjon sayCatchPhrase (navn) setninger = 'Fred Flintstone': 'Yabba dabba doo!', 'Velma': 'Jinkies!', 'Razor': 'Bingo!', 'He-Man': 'Jeg har kraften '; returnere fraser [navn];
6. Mutation
Mutation betyr endring eller modifikasjon. Hvis du noen gang kommer over ordmutasjonen i JavaScript, refererer det sannsynligvis til endringene som DOM-elementene gikk gjennom.
Det er enda en API kalt MutationObserver for å holde øye med DOM-mutasjonene som tillegg av barnelementer eller endrer seg til elementets attributter. (Du kan lese mer om MutationObserver i mitt innlegg.)
7. Pragma
Pragma er kort for pragmatisk informasjon. På vanlig engelsk er pragmatisk et adjektiv som betyr fornuftig og praktisk. I programmering, Pragma refererer til koden som består av nyttig informasjon om hvordan en kompilator eller tolk eller samler skal behandle programmet.
Det bidrar ikke noe til programmeringsspråket selv og dets syntaks kan variere. De påvirker bare kompilatoradferd. JavaScript har også få pragmas, en av dem er streng
.
"bruk strenge";
Ved ovennevnte pragma vil JavaScript-koden bli utført i streng modus. I streng modus er dårlig syntaks ikke tillatt, heising er ikke ferdig, tydelige feil vises, etc. Det hjelper i skriver en sikrere og optimalisert JavaScript-kode.
8. Sentinel
Sentinels er soldater som står vakt (husk dem fra X-Men?). I programmering, Sentinels er verdier som brukes til å indikere slutten av en løkke eller prosess. De kan også bli kalt “flagg”.
Du kan bruke en rimelig verdi som en sentinel. Her er et eksempel på Sentinels brukes i JavaScript; de oversikt over
metode som returnerer -1 (sentinelverdien) når søkeverdien ikke er funnet i målstrengen. Nedenfor er en funksjon som returnerer posisjonen til en array verdi, og hvis verdien ikke blir funnet, returnerer -1.
funksjon getPos (ary, val) var i = 0, len = ary.length; for (; i9. Vanilje
Jeg tror at alles første iskremsmake må ha vært vanilje. Jeg tror også det ikke bare i iskrem, men i stort sett ble hver søte parabolen vanilje blitt de standard smak. Jeg har sett ganske mange kakeoppskrifter der de legger til minst en dråpe det i blandingen - bare for å øke smaken.
Og det er det vanilje er en tradisjonell standard smak. vanilje JavaScript refereres til standard JavaScript-no rammeverk. Vanilje er faktisk ikke bare brukt til å beskrive standardversjonen av JavaScript, men også andre språk som CSS.
10. Variadic
Variadic er et adjektiv opprettet ved å bli med “variabel” og “adicity”. “Adicity” er fra gammelgresk, med en mening som er den samme som det latinske ordet “arity” (Punkt 1 i denne listen). Dermed er uttrykket variadic er vant til uttrykk noe som har variabelt antall argumenter.
I JavaScript, a variadic funksjonen tar i noen antall argumenter. Det kan opprettes ved hjelp av
argumenter
eiendom,søke om
metode og siden ES6, spredningsoperatøren. Nedenfor er et eksempel ved hjelp av en spredningsoperatør.funksjonstest (... a) console.log (a); test ('a', 'b', 'c', 8, [56, -89]); // utgang er Array ["a", "b", "c", 8, Array [2]]