Lodash je JavaScriptová knihovna, která nabízí pomocné funkce pro typické programovací úlohy využívající funkční programovací model.
Knihovna, která pracuje s webovými prohlížeči a Node.js, dokáže upravovat a převádět data, provádět asynchronní operace a další.
Naučte se používat lodash k manipulaci s poli, řetězci a objekty a zjistěte o jeho pokročilých funkcích, jako je kompozice funkcí.
Začínáme s Lodash
Lodash můžete do své aplikace přidat jedním ze dvou způsobů: pomocí Content Delivery Network (CDN) nebo instalací pomocí npm nebo yarn.
Chcete-li použít lodash přímo v prohlížeči, zkopírujte níže uvedený odkaz lodash CDN a vložte jej do sekce head vašeho HTML souboru:
<skriptsrc=" https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"
type="text/javascript">skript>
Pomocí tohoto přístupu můžete spouštět skripty pomocí lodash v těle vašeho HTML.
Chcete-li použít lodash v projektu Node.js, měli byste jej nainstalovat do adresáře projektu. K tomu můžete použít buď npm nebo přízi:
npm install --save lodash
# nebo
příze přidat lodash
Nyní můžete použít lodash tak, že jej budete vyžadovat v souboru JavaScript:
// Vyžaduje knihovnu lodash
konst _ = vyžadovat("lodash");
// Použití metody _.sum
konst čísla = [10, 20, 30, 40, 50];
konst součet = _.součet (čísla);
řídicí panel.log (součet);
Chcete-li spustit soubor JavaScript, zadejte příkaz node:
uzel [název vašeho skriptu]
Manipulace s poli v Lodash
Lodash přichází se sadou metod pro manipulaci s poli, které poskytují funkce nad rámec vestavěné třídy Array v JavaScriptu.
.kus
Tato metoda rozdělí pole do skupin menších polí dané velikosti. Konečný kus může být menší než velikost, kterou požadujete.
Zde je příklad:
konst pole = [ 'A', 'b', 'C', 'd', 'E', 'F', 'G' ];
konst newArray = _.chunk (pole, 2)
řídicí panel.log (newArray)
// Výstup:
// [ [ 'a', 'b' ], [ 'c', 'd' ], [ 'e', 'f' ], [ 'g' ] ]
.concat
Tato metoda generuje nové pole zřetězením hodnot na konec existujícího pole.
Například:
konstpole = [ 1, 2, 'A' ];
konst newArray = _.concat(pole, 5, 'b', [ 8 ], [ [ 9 ] ]);
řídicí panel.log (newArray);
// Výstup:
// [ 1, 2, 'a', 5, 'b', 8, [ 9 ] ]
.připojit
Tato metoda vrací řetězec kombinací prvků pole. Spojuje je pomocí oddělovače, který předáváte jako parametr při volání metody. Výchozí oddělovač, který používá, je čárka:
konstpole = [ "l", "Ó", "d", "A", "s", "h" ];
konst newArray = _.join(pole);
řídicí panel.log (newArray);// Výstup:
// l, o, d, a, s, hkonst newArray = _.join(pole, "-");
řídicí panel.log (newArray);
// Výstup:
// hle-d-A-s-h
Manipulace se řetězci v Lodash
S holým JavaScriptem, formátování řetězce je jednoduchý proces. Ale lodash to dělá ještě jednodušší.
Některé z nejběžnějších operací manipulace s řetězci, které můžete provádět pomocí lodash, zahrnují:
.startsWith a .endsWith
Tyto dvě metody kontrolují, zda řetězec začíná nebo končí podřetězcem. Obě metody vracejí booleovskou hodnotu true nebo false.
Například:
konst řetězec = "lodash";
řídicí panel.log (_.startsWith (řetězec, "l"));
// Výstup: trueřídicí panel.log (_.startsWith (řetězec, "Ó"));
// Výstup: falseřídicí panel.log (_.endsWith (řetězec, "m"));
// Výstup: false
řídicí panel.log (_.endsWith (řetězec, "h"));
// Výstup: true
.opakovat
Tato metoda opakovaně tiskne řetězec určitý počet opakování. Jako první argument bere řetězec a jako druhý počet opakování:
konst řetězec = "lodash"
konst newString = _.repeat (řetězec, 3);
řídicí panel.log (novýString);
// Výstup: lodashlodashlodash
.oříznout
Tato metoda odstraňuje úvodní a koncové mezery. Můžete jej také použít k odstranění jakýchkoli specifických znaků na začátku a na konci řetězce.
Například:
// Odstranění úvodních a koncových mezer
konst řetězec = " bar "
konst newString = _.trim (řetězec)
řídicí panel.log (novýString);
// Výstup: bar
// Odstranění zadaných znaků
konst řetězec = ",bar,"
konst newString = _.trim (řetězec, ",")
řídicí panel.log (novýString);
// Výstup: bar
Manipulace s objekty v Lodash
Níže jsou uvedeny některé příklady manipulace s řetězci, které můžete provádět pomocí lodash:
.spojit
The _.spojit() metoda vytvoří nový objekt kombinací vlastností vstupních objektů. Hodnota vlastnosti z pozdějšího objektu nahradí hodnotu z dřívějšího objektu, pokud je vlastnost přítomna ve více než jednom objektu.
Například:
konst knihy = {
'Matematika': 4,
'Věda': 7
};
konst poznámky = {
'Věda': 3,
'Chemie': 5
};_.spojit(knihy, poznámky);
řídicí panel.log (knihy);
// Výstup:
// { Matematika: 4, Věda: 3, Chemie: 5 }
V tomto příkladu metoda přidá vlastnost ‚Chemistry‘ z druhého objektu a přepíše hodnotu vlastnosti ‚Science‘ prvního objektu.
.má
Tato metoda vrací hodnotu true, pokud v objektu existuje daná řada vlastností, a v opačném případě vrací hodnotu false.
Například:
konst knihy = {
'Matematika': 4,
'Věda': 7
};
řídicí panel.log (_.has (knihy, "Matematika"));
// Výstup: true
.vynechat
Tato metoda vrací nový objekt odstraněním zadaných vlastností z daného.
Například:
var knihy = {
'Matematika': 4,
'Věda': 3,
'Chemie': 5
};
řídicí panel.log (_.omit (knihy, "Věda"));
// Výstup: { Matematika: 4, Chemie: 5 }
Složení funkcí v Lodash
Kompozice funkcí je technika, kterou můžete použít funkční programovací jazyk. Zahrnuje spojení dvou nebo více funkcí do nové funkce voláním každé funkce v určitém pořadí. Tato funkce umožňuje vytvářet složitější logiku z jednodušších funkcí.
Chcete-li použít tuto techniku, lodash přichází s _.tok a _.flowRight funkcí. The _.tok() funkce přijímá seznam funkcí jako argumenty a vydává novou funkci, která aplikuje funkce ve stejném pořadí, v jakém je předáváte. The _.flowRight() funkce dělá totéž, ale volá funkce obráceně.
Například:
funkcepřidatPět(číslo) {
vrátit se číslo + 5
}funkcekrátDvakrát(číslo) {
vrátit se číslo * 2
}konst addFiveAndTimesTwo = _.flow([addFive, timesTwo]);
konst addFiveAndTimesTwoReverse = _.flowRight([addFive, timesTwo]);
řídicí panel.log (addFiveAndTimesTwo(3));
// Výstup: 16
řídicí panel.log (addFiveAndTimesTwoReverse(3));
// Výstup: 11
Výše uvedený kód definuje funkce přidatPět a krátDvakrát. Funkce addFive vrací výsledek přičtení 5 k danému číslu. Funkce timesTwo vynásobí vstupní číslo 2 a vrátí výsledek.
Kód pak používá _.tok() funkce pro spojení dvou dalších a vytvoření nové funkce, addFiveAndTimesTwo. Tato nová funkce nejprve provede operaci addFive na svém argumentu před provedením operace timesTwo na konečném výsledku.
The _.flowRight() funkce vytváří novou funkci, která dělá totéž jako tok, ale obráceně.
Nakonec tento kód zavolá dvě nové funkce a předá je 3, jako argument a zaznamenává výsledky do konzoly.
Výhody práce s Lodash
Pomocí lodash můžete zjednodušit svůj kód a učinit své projekty flexibilnějšími a udržovatelnějšími. Jeho široká škála užitečných funkcí, rozšířené přijetí a pravidelné aktualizace vám pomohou napsat elegantní a efektivní kód. Pomocí lodash můžete zaručit, že váš kód bude vždy aktuální a kompatibilní se současnými prohlížeči.