JavaScript Jargon 10 Ehdot, jotka sinun pitäisi tietää
alkaen Parkitus että sulkemiset on olemassa useita JavaScript-jargoneja (kentässä käytettävät erikoisnimikkeet), jotka tietävät, mikä ei ainoastaan auta lisäämään sanastoa, vaan ymmärtämään paremmin JavaScriptiä. Jargoneja löytyy yleensä dokumentaatioista ja teknisistä artikkeleista. Mutta jotkut heistä pitävät sulkemiset ovat melko tavallisia asioita tietää. Tietäen, mitä sana itse tarkoittaa, voi auttaa sinua ymmärtämään käsitteen, jota se on nimetty paremmin.
Tämä viesti koostuu kymmenestä tällaisesta termistä niiden merkitys ja konteksti, jossa niitä käytetään JavaScriptissä. Jos olet aloittelija, tämä lista on peitetty perusasioihin nostolaitteet. Samaan aikaan sisältyy myös vähemmän tunnettuja tai vähemmän ymmärrettyjä termejä.
- Arity
- anonyymi
- Päättäminen
- currying
- hoisting
- Mutaatio
- Pragma
- vahti
- Vanilja
- Variadic
1. Arity
Arity (latinalaiselta) on termi, jota käytetään viittaamaan funktion tai toiminnon argumenttien tai operandien määrään. Olet todennäköisimmin törmännyt tähän sanaan JavaScript-alueella, kun sitä käytetään mainitsemaan JavaScript-toiminnon odotettavissa olevien argumenttien määrä.
On jopa ominaisuus nimeltä arity, Toimia
objekti, joka palauttaa odotettavissa olevien argumenttien määrän funktiossa. Se on kuitenkin vanhentunut ja korvattu pituus
.
Seuraavan toiminnon ariteetti on 3.
toiminto getName (ensimmäinen, keskimmäinen, viimeinen) paluu ensin + "+ keskellä +" + viimeinen;
2. Nimetön
anonyymi on adjektiivi. Kun jotain tai jotakuta kutsutaan nimettömäksi, se tarkoittaa, että asian tai henkilön nimi on tunnistamaton. Samoin JavaScriptissä nimettömänä ei ole nimettömää toimintoa.
(toiminto () // body) ();
Yllä on IIFE (välitön kehotettu funktion ilmaus). Sen funktio on anonyymi, koska sillä ei ole nimeä. Katsokaa seuraavaa.
var foo = toiminto () ;
Tämän sanotaan olevan myös nimettömänä, koska avainsanan jälkeen ei ole nimeä toimia
.
Vähän epäilystä nousee sanan käytön oikeellisuudessa “anonyymi”. IIFE: n avulla toiminto kutsutaan heti, nimeä ei ole otettu mukaan, kun taas jälkimmäinen toiminto kutsutaan syntaksiksi foo ()
käytetään.
Se on kuin me ristisimme nimettömän toiminnon nimellä "foo" ja kutsumme sitä käyttämään sitä. Lasketaanko se nimettömänä? En tiedä, jätän sen englanninkielisille asiantuntijoille. Minun sekaannukseni molemmat ovat nimittäin nimeltään nimettömiä.
3. Sulkeminen
Tässä on yksi Oxford-sanakirjan määritelmistä päättäminen: “Asia, joka sulkee tai sulkee jotain, kuten korkki tai solmio.”
JavaScriptissä sulkeminen on sisäinen toiminto, joka on ulottuvillasi sen ulkoisen toiminnon ulkopuolella, ja sen yhteys ulkoisen funktion muuttujiin on edelleen ehjä.
Voit selittää asioita (ehkä ei aivan tarkasti, mutta vain tarpeeksi) päättäminen tarjoilijana ravintolassa. Paljon asioita tapahtuu ravintolan keittiössä, jossa emme saa päästä tai nähdä. Mutta miten meidän pitäisi saada ruokamme sitten?
Siellä odottavat tarjoilijat. Me kutsumme heidät, tilaamme ruokaa, ja sitten he menevät keittiöön, ilmoittavat kokkeja tilauksista ja tuovat sen meille, kun tilaus on valmis. Näin emme ole rikkoneet mitään “säännöt” ja voi silti onnistua tarttumaan ateriaan.
Tarjoilija on joku, joka pystyy ottamaan tilauksen keittiöön ja palaamaan ruoan kanssa. JavaScript sulkemiset ovat samankaltaisia, he voivat ota parametrit ja palauttaa meille muuttujat (viittaukset näihin muuttujiin, tarkalleen ottaen) sisäisestä toiminnosta, jota emme ole sallineet.
toiminnon järjestys () var food; toimeksiantaja (tilaus) kokki (tilaus); palauttaa ruokaa; funktiokokki (järjestys) if (tilaus === 'pasta') food = ['pasta', 'kastike', 'mauste'); kokki(); toiminto cook () food.push ('keitetyt'); paluu tarjoilija; var myOrder = tilaus (); console.log (myOrder ( 'pasta')); // Array ["pasta", "kastike", "mauste", "keitetyt"]
Kuten näette yllä olevasta koodista, kaikki lukuun ottamatta tarjoilija
ja sen palautusarvo tilauksen toiminnasta ei ole alttiina ulkomaailmalle.
4. Currying
Haskell Curryn nimeämä vaikutus viittaa käyttämällä useita toimintoja yksittäisillä argumenteilla, yhden toiminnon sijasta, jossa on useita argumentteja. Katsotaanpa lisätä
toiminnot alla.
toiminto addx (x) toiminto addy (y) palaa x + y; return addy toiminto lisää (x, y) paluu (x + y); console.log (addx (3) (4)); 7 console.log (lisää (3,4)); \\ 7
Molemmat toiminnot palauttavat saman tuloksen. Toiminto addx
hyväksyy parametrin x
kun palaat Addy
joka puolestaan hyväksyy y
arvo, suorittaa lisäyksen x
ja palauttaa summan.
Toiminto lisätä
yksinkertaisesti ottaa molemmat x
ja y
samanaikaisesti suorittaa lisäyksen ja palauttaa summan. Toistaiseksi ensimmäinen toiminto ei ehkä näytä kovin hyödyllisenä, kunnes…
var add4 = addx (4); console.log (ADD4 (8)); // 12 console.log (add4 (6)); // 10 console.log (add4 (-74)); // - 70
Nyt entinen toiminto saa yhtäkkiä mielenkiintoisen. Curryingissa voit aina korjata askeleen toiminnallisessa järjestyksessä, kuten 4: n lisääminen yllä olevasta koodista, mikä on hyödyllistä, kun jokin operaatiossa käytetyistä muuttujista on aina sama.
5. Nostaminen
Hoist tarkoittaa korottaa jotain. hoisting JavaScript tarkoittaa myös samaa ja se, mitä nostetaan, on ilmoitus (muuttujan ja toiminnon ilmoitukset).
Ilmoitukset ovat, kun muuttujat ja toiminnot luodaan avainsanoilla var
(ei globaaleille) ja toimia
.
Ei ole väliä, mihin kirjoitat koodin ilmoittaaksesi toiminnon tai muuttujan, arvioinnin aikana kaikki ilmoitukset siirretään ylös alueen sisällä, jossa ne asuvat (paitsi tiukassa tilassa). Näin ollen on mahdollista kirjoittaa toimintakoodi, jossa on funktiokutsun koodi ennen funktion ilmoitusta.
var nimi = 'Velma'; console.log (sayCatchPhrase (nimi)); // "Jinkies!" function sayCatchPhrase (nimi) phrases = 'Fred Flintstone': 'Yabba dabba doo!', 'Velma': 'Jinkies!', 'Razor': 'Bingo!', 'He-Man': 'Minulla on voima '; paluu lauseet [nimi];
6. Mutaatio
Mutaatio tarkoittaa muutosta tai muutosta. Jos olet koskaan törmännyt sanaan mutaatio JavaScriptissä, se viittaa todennäköisesti muutoksiin, joita DOM-elementit käyvät läpi.
Myös API on nimeltään MutationObserver, joka pitää silmällä DOM-mutaatioita lasten elementtien lisääminen tai muutokset elementin ominaisuuksiin. (Voit lukea lisää MutationObserveristä postitse.)
7. Pragma
Pragma on lyhyt käytännöllisistä tiedoista. Yksinkertaisesti englanniksi pragmaattinen on adjektiivi, joka tarkoittaa järkevää ja käytännöllistä. Ohjelmoinnissa, pragma viittaa koodiin, joka sisältää hyödyllistä tietoa miten kääntäjä tai tulkki tai kokoaja käsittelee ohjelmaa.
Se ei edistä mitään ohjelmointikielelle ja sen syntaksi voi vaihdella. Ne vaikuttavat vain kääntäjän käyttäytymiseen. JavaScriptissä on myös muutamia pragmeja, joista yksi on tiukka
.
"käytä tiukkaa";
Edellä mainitulla käytännöllä JavaScript-koodi suoritetaan tiukassa tilassa. Tiukassa tilassa huono syntaksi ei ole sallittua, nostolaitteet ei tehdä, hiljaiset virheet näytetään jne. Se auttaa turvallisemman ja optimoidun JavaScript-koodin kirjoittaminen.
8. Sentinel
Sentinels ovat sotilaita, jotka seisovat vartijana (Muista ne, jotka ovat peräisin X-Menistä?). Ohjelmoinnissa, vartijaa ovat arvoja, joita käytetään osoittamaan silmukan tai prosessin loppu. Niitä voidaan myös kutsua “liput”.
Voit käyttää mitä tahansa kohtuullista arvoa a vahti. Tässä on esimerkki vartijaa JavaScriptissä; sisällysluettelo
menetelmä, joka palauttaa -1: n (sentinell-arvo), kun haun arvoa ei löydy kohdistetusta merkkijonosta. Alla on funktio, joka palauttaa taulukon arvon ja jos arvoa ei löydy, palaa -1.
toiminto getPos (ary, val) var i = 0, len = ary.length; ja (i9. Vanilja
Mielestäni kaikkien ensimmäinen jäätelön maku on pitänyt olla vaniljaa. Mielestäni tämä ei ole vain jäätelössä, vaan melko paljon jokaisessa vanilja-astiassa tavallinen maku. Olen nähnyt melko vähän kakun reseptejä, joissa ne lisäävät vähintään yhden pisaran sekoitukseen - vain lisätä makua.
Ja niin vanilja on perinteinen tavallinen maku. Vanilja JavaScriptiä kutsutaan tavalliseksi JavaScript-järjestelmäksi - ei kehystä. Vaniljaa ei käytetä pelkästään JavaScriptin vakiomallin kuvaamiseen vaan myös muihin kieliin, kuten CSS.
10. Variadic
Variadic on adjektiivi, joka on luotu liittymällä “muuttuja” ja “adicity”. “Adicity” on peräisin muinaisesta kreikasta, jolla on sama merkitys kuin latinalaisella sanalla “arity” (Kohta 1 tässä luettelossa). Näin ollen termi variadic on tapana ilmaista jotain, jolla on vaihteleva määrä argumentteja.
JavaScriptissa a variadic toiminto vie mihinkään määrään argumentteja. Se voidaan luoda käyttämällä
argumentit
omaisuus,Käytä
ja ES6: sta, joka on levitetty toimija. Alla on esimerkki hajautetun operaattorin käytöstä.toimintatesti (… a) console.log (a); testi ('a', 'b', 'c', 8, [56, -89]); // lähtö on Array ["a", "b", "c", 8, Array [2]]