Lodash je knižnica JavaScript, ktorá ponúka pomocné funkcie pre typické programovacie úlohy pomocou funkčného programovacieho modelu.
Knižnica, ktorá pracuje s webovými prehliadačmi a Node.js, dokáže upravovať a konvertovať dáta, vykonávať asynchrónne operácie a podobne.
Naučte sa používať lodash na manipuláciu s poľami, reťazcami a objektmi a zistite o jeho pokročilých funkciách, ako je zloženie funkcií.
Začíname s Lodash
Lodash môžete do svojej aplikácie pridať jedným z dvoch spôsobov: pomocou siete na doručovanie obsahu (CDN) alebo inštaláciou pomocou npm alebo yarn.
Ak chcete použiť lodash priamo v prehliadači, skopírujte nižšie uvedený odkaz lodash CDN a vložte ho do sekcie hlavičky vášho súboru HTML:
<skriptsrc=" https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"
type="text/javascript">skript>
Pomocou tohto prístupu môžete spúšťať skripty pomocou lodash v tele vášho HTML.
Ak chcete použiť lodash v projekte Node.js, mali by ste ho nainštalovať do adresára vášho projektu. Na tento účel môžete použiť buď npm alebo priadzu:
npm install --save lodash
# alebo
priadza pridať lodash
Teraz môžete použiť lodash tak, že ho budete vyžadovať v súbore JavaScript:
// Vyžaduje sa knižnica lodash
konšt _ = vyžadovať("lodash");
// Použitie metódy _.sum
konšt čísla = [10, 20, 30, 40, 50];
konšt súčet = _.súčet (čísla);
konzoly.log (súčet);
Ak chcete spustiť súbor JavaScript, zadajte príkaz node:
uzol [názov vášho skriptu]
Manipulácia s poľami v Lodash
Lodash prichádza so sadou metód na manipuláciu s poľami, ktoré poskytujú funkcie nad rámec vstavanej triedy Array v JavaScripte.
.kúsok
Táto metóda rozdeľuje pole do skupín menších polí danej veľkosti. Konečný kus môže byť menší ako veľkosť, ktorú požadujete.
Tu je príklad:
konšt pole = [ 'a', 'b', 'c', 'd', 'e', 'f', 'g' ];
konšt newArray = _.chunk (pole, 2)
konzoly.log (newArray)
// Výkon:
// [ [ 'a', 'b' ], [ 'c', 'd' ], [ 'e', 'f' ], [ 'g' ] ]
.concat
Táto metóda generuje nové pole zreťazením hodnôt na koniec existujúceho poľa.
Napríklad:
konštpole = [ 1, 2, 'a' ];
konšt newArray = _.concat(pole, 5, 'b', [ 8 ], [ [ 9 ] ]);
konzoly.log (newArray);
// Výkon:
// [ 1, 2, 'a', 5, 'b', 8, [ 9 ] ]
.pripojiť sa
Táto metóda vráti reťazec kombináciou prvkov poľa. Spája ich pomocou oddeľovača, ktorý odovzdávate ako parameter pri volaní metódy. Predvolený oddeľovač, ktorý používa, je čiarka:
konštpole = [ "l", "o", "d", "a", "s", "h" ];
konšt newArray = _.join(pole);
konzoly.log (newArray);// Výkon:
// l, o, d, a, s, hkonšt newArray = _.join(pole, "-");
konzoly.log (newArray);
// Výkon:
// l-o-d-a-s-h
Manipulácia so strunami v Lodash
S holým JavaScriptom, formátovanie reťazca je jednoduchý proces. Ale lodash to robí ešte jednoduchším.
Niektoré z najbežnejších operácií manipulácie s reťazcami, ktoré môžete vykonávať pomocou lodash, zahŕňajú:
.začínaWith a .endsWith
Tieto dve metódy kontrolujú, či reťazec začína alebo končí podreťazcom. Obe metódy vracajú boolovskú hodnotu true alebo false.
Napríklad:
konšt reťazec = "lodash";
konzoly.log (_.startsWith (reťazec, "l"));
// Výstup: truekonzoly.log (_.startsWith (reťazec, "o"));
// Výstup: falsekonzoly.log (_.endsWith (reťazec, "m"));
// Výstup: false
konzoly.log (_.endsWith (reťazec, "h"));
// Výstup: true
.opakovať
Táto metóda opakovane vytlačí reťazec určitý počet krát. Ako prvý argument berie reťazec a ako druhý počet opakovaní:
konšt reťazec = "lodash"
konšt newString = _.repeat (reťazec, 3);
konzoly.log (newString);
// Výstup: lodashlodashlodash
.orezať
Táto metóda odstraňuje medzery na začiatku a na konci. Môžete ho tiež použiť na odstránenie akýchkoľvek špecifických znakov na začiatku a na konci reťazca.
Napríklad:
// Odstraňovanie medzier na začiatku a na konci
konšt reťazec = "bar"
konšt newString = _.trim (reťazec)
konzoly.log (newString);
// Výstup: bar
// Odstránenie špecifikovaných znakov
konšt reťazec = ",bar,"
konšt newString = _.trim (reťazec, ",")
konzoly.log (newString);
// Výstup: bar
Manipulácia s objektmi v Lodash
Nižšie sú uvedené niektoré príklady manipulácie s reťazcami, ktoré môžete vykonať pomocou lodash:
.zlúčiť
The _.zlúčiť() metóda vytvorí nový objekt kombináciou vlastností vstupných objektov. Hodnota vlastnosti z neskoršieho objektu nahradí hodnotu zo skoršieho objektu, ak je vlastnosť prítomná vo viac ako jednom objekte.
Napríklad:
konšt knihy = {
'matematika': 4,
'veda': 7
};
konšt poznámky = {
'veda': 3,
'chémia': 5
};_.zlúčiť(knihy, poznámky);
konzoly.log (knihy);
// Výkon:
// { Matematika: 4, Veda: 3, Chémia: 5 }
V tomto príklade metóda pridá vlastnosť „Chémia“ z druhého objektu a prepíše hodnotu vlastnosti „Veda“ prvého objektu.
.má
Táto metóda vráti hodnotu true, ak v objekte existuje daný rad vlastností, a v opačnom prípade vráti hodnotu false.
Napríklad:
konšt knihy = {
'matematika': 4,
'veda': 7
};
konzoly.log (_.has (knihy, "matematika"));
// Výstup: true
.vynechať
Táto metóda vráti nový objekt odstránením špecifikovaných vlastností z daného.
Napríklad:
var knihy = {
'matematika': 4,
'veda': 3,
'chémia': 5
};
konzoly.log (_.omit (knihy, "veda"));
// Výstup: { Matematika: 4, Chémia: 5 }
Zloženie funkcií v Lodash
Kompozícia funkcií je technika, ktorú môžete použiť funkčný programovací jazyk. Zahŕňa kombináciu dvoch alebo viacerých funkcií do novej funkcie volaním každej funkcie v určitom poradí. Táto funkcia vám umožňuje vytvoriť zložitejšiu logiku z jednoduchších funkcií.
Ak chcete použiť túto techniku, lodash prichádza s _.tok a _.flowRight funkcie. The _.flow() funkcia akceptuje zoznam funkcií ako argumenty a vygeneruje novú funkciu, ktorá aplikuje funkcie v rovnakom poradí, v akom ich zadáte. The _.flowRight() funkcia robí to isté, ale volá funkcie opačne.
Napríklad:
funkciupridaťpäť(číslo) {
vrátiť číslo + 5
}funkciukrát dva(číslo) {
vrátiť číslo * 2
}konšt addFiveAndTimesTwo = _.flow([addFive, timesTwo]);
konšt addFiveAndTimesTwoReverse = _.flowRight([addFive, timesTwo]);
konzoly.log (addFiveAndTimesTwo(3));
// Výstup: 16
konzoly.log (addFiveAndTimesTwoReverse(3));
// Výstup: 11
Vyššie uvedený kód definuje funkcie pridaťpäť a krát dva. Funkcia addFive vráti výsledok pridania 5 k danému číslu. Funkcia timesTwo vynásobí vstupné číslo 2 a vráti výsledok.
Kód potom používa _.flow() funkciu spojiť dve ďalšie a vytvoriť novú funkciu, addFiveAndTimesTwo. Táto nová funkcia najskôr vykoná operáciu addFive na svojom argumente pred vykonaním operácie timesTwo na konečnom výsledku.
The _.flowRight() funkcia vytvára novú funkciu, ktorá robí to isté ako tok, ale naopak.
Nakoniec tento kód zavolá dve nové funkcie a prejde 3, ako argument a zaznamená výsledky do konzoly.
Výhody práce s Lodash
Pomocou lodash môžete zjednodušiť svoj kód a zvýšiť flexibilitu a údržbu svojich projektov. Jeho široká škála pomocných funkcií, široké prijatie a pravidelné aktualizácie vám pomôžu napísať elegantný a efektívny kód. Pomocou lodash môžete zaručiť, že váš kód bude vždy aktuálny a kompatibilný so súčasnými prehliadačmi.