Lodash er et JavaScript-bibliotek, der tilbyder hjælpefunktioner til typiske programmeringsopgaver ved hjælp af den funktionelle programmeringsmodel.
Biblioteket, som arbejder med webbrowsere og Node.js, kan ændre og konvertere data, udføre asynkrone operationer og mere.
Lær, hvordan du bruger lodash til at manipulere arrays, strenge og objekter, og find ud af dets avancerede funktioner som funktionssammensætning.
Kom godt i gang med Lodash
Du kan tilføje lodash til din app på en af to måder: ved at bruge et Content Delivery Network (CDN) eller installere det ved hjælp af npm eller garn.
For at bruge lodash direkte i browseren skal du kopiere lodash CDN-linket nedenfor og indsætte det i head-sektionen af din HTML-fil:
<manuskriptsrc=" https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"
type="text/javascript">manuskript>
Ved at bruge denne tilgang kan du køre scripts ved hjælp af lodash i kroppen af din HTML.
For at bruge lodash i et Node.js-projekt, skal du installere det i din projektmappe. Du kan bruge enten npm eller garn til at gøre det:
npm install --gem lodash
# eller
garn tilføj lodash
Du kan nu bruge lodash ved at kræve det i din JavaScript-fil:
// Kræver lodash-biblioteket
konst _ = kræve("lodash");
// Brug af _.sum metoden
konst tal = [10, 20, 30, 40, 50];
konst sum = _.sum (tal);
konsol.log (sum);
Indtast node-kommandoen for at køre din JavaScript-fil:
node [Dit script navn]
Array-manipulation i Lodash
Lodash kommer med et sæt metoder til array-manipulation, der giver funktionalitet ud over JavaScripts indbyggede Array-klasse.
.luns
Denne metode opdeler et array i grupper af mindre arrays af en given størrelse. Den sidste del kan være mindre end den størrelse, du anmoder om.
Her er et eksempel:
konst matrix = [ 'en', 'b', 'c', 'd', 'e', 'f', 'g' ];
konst newArray = _.chunk (array, 2)
konsol.log (newArray)
// Output:
// [ [ 'A b c d e f g' ] ]
.concat
Denne metode genererer et nyt array ved at sammenkæde værdier til slutningen af et eksisterende array.
For eksempel:
konstarray = [ 1, 2, 'en' ];
konst newArray = _.concat(array, 5, 'b', [ 8 ], [ [ 9 ] ]);
konsol.log (nytArray);
// Output:
// [ 1, 2, 'a', 5, 'b', 8, [ 9 ] ]
.tilslutte
Denne metode returnerer en streng ved at kombinere elementer i et array. Den forbinder dem ved hjælp af en afgrænsning, som du sender som en parameter, når du kalder metoden. Standardafgrænsningen, den bruger, er et komma:
konstarray = [ "l", "o", "d", "en", "s", "h" ];
konst newArray = _.join(array);
konsol.log (nytArray);// Output:
// l, o, d, a, s, hkonst newArray = _.join(array, "-");
konsol.log (nytArray);
// Output:
// l-o-d-en-s-h
Strengemanipulation i Lodash
Med blottet JavaScript, strengformatering er en simpel proces. Men lodash gør det endnu nemmere.
Nogle af de mest almindelige strengmanipulationsoperationer, du kan udføre med lodash, inkluderer:
.startsWith og .endsWith
Disse to metoder kontrollerer, om en streng henholdsvis starter eller slutter med en understreng. Begge metoder returnerer en boolsk værdi af sand eller falsk.
For eksempel:
konst streng = "lodash";
konsol.log (_.startsWith (streng, "l"));
// Output: sandkonsol.log (_.startsWith (streng, "o"));
// Output: falskkonsol.log (_.endsWith (streng, "m"));
// Output: falsk
konsol.log (_.endsWith (streng, "h"));
// Output: sand
.gentage
Denne metode udskriver gentagne gange en streng et bestemt antal gange. Det tager strengen som sit første argument og antallet af gentagelser som det andet:
konst streng = "lodash"
konst newString = _.repeat (streng, 3);
konsol.log (nystreng);
// Output: lodashlodashlodash
.trimme
Denne metode fjerner mellemrum foran og efter. Du kan også bruge den til at fjerne specifikke tegn i begyndelsen og slutningen af en streng.
For eksempel:
// Fjernelse af indledende og efterfølgende mellemrum
konst streng = "bar"
konst newString = _.trim (streng)
konsol.log (nystreng);
// Udgang: bar
// Fjernelse af angivne tegn
konst streng = ",bar,"
konst newString = _.trim (streng, ",")
konsol.log (nystreng);
// Udgang: bar
Objektmanipulation i Lodash
Nedenfor er nogle eksempler på strengmanipulation, som du kan udføre med lodash:
.fusionere
Det _.fusionere() metoden opretter et nyt objekt ved at kombinere egenskaberne for inputobjekterne. En egenskabs værdi fra det senere objekt vil erstatte værdien fra det tidligere objekt, hvis egenskaben er til stede i mere end ét objekt.
For eksempel:
konst bøger = {
'Matematik': 4,
'Videnskab': 7
};
konst noter = {
'Videnskab': 3,
'Kemi': 5
};_.fusionere(bøger, noter);
konsol.log (bøger);
// Output:
// { Matematik: 4, Naturvidenskab: 3, Kemi: 5 }
I dette eksempel tilføjer metoden 'Kemi'-egenskaben fra det andet objekt og overskriver værdien af det første objekts 'Science'-egenskab.
.har
Denne metode returnerer sand, hvis der findes en given række egenskaber i et objekt og ellers falsk.
For eksempel:
konst bøger = {
'Matematik': 4,
'Videnskab': 7
};
konsol.log (_.har (bøger, "Matematik"));
// Output: sand
.udelade
Denne metode returnerer et nyt objekt ved at fjerne specificerede egenskaber fra den givne.
For eksempel:
var bøger = {
'Matematik': 4,
'Videnskab': 3,
'Kemi': 5
};
konsol.log (_.udelad (bøger, "Videnskab"));
// Output: { Matematik: 4, Kemi: 5 }
Funktionssammensætning i Lodash
Funktionssammensætning er en teknik, du kan bruge i et funktionelt programmeringssprog. Det involverer at kombinere to eller flere funktioner til en ny funktion ved at kalde hver funktion i en bestemt rækkefølge. Denne funktion giver dig mulighed for at skabe mere kompleks logik ud fra enklere funktioner.
For at anvende denne teknik kommer lodash med _.flyde og _.flowRight funktioner. Det _.flyde() funktion accepterer en liste over funktioner som argumenter og udsender en ny funktion, der anvender funktionerne i samme rækkefølge, som du sender dem ind. Det _.flowRight() funktion gør det samme, men den kalder funktionerne omvendt.
For eksempel:
fungereaddFive(nummer) {
Vend tilbage nummer + 5
}fungeregange To(nummer) {
Vend tilbage nummer * 2
}konst addFiveAndTimesTwo = _.flow([addFive, timesTo]);
konst addFiveAndTimesTwoReverse = _.flowRight([addFive, timesTo]);
konsol.log (addFiveAndTimesTwo(3));
// Output: 16
konsol.log (addFiveAndTimesTwoReverse(3));
// Output: 11
Ovenstående kode definerer funktionerne addFive og gange To. Funktionen addFive returnerer resultatet af at lægge 5 til et givet tal. TimesTwo-funktionen multiplicerer et inputtal med 2 og returnerer resultatet.
Koden bruger derefter _.flyde() funktion til at kombinere de to andre og producere den nye funktion, addFiveAndTimesTwo. Denne nye funktion vil først udføre addFive-operationen på sit argument, før den udfører timesTwo-operationen på det endelige resultat.
Det _.flowRight() funktion producerer en ny funktion, der gør det samme som flow, men omvendt.
Endelig kalder denne kode de to nye funktioner, passerer 3, som argumentet, og logger resultaterne til konsollen.
Fordelene ved at arbejde med Lodash
Du kan bruge lodash til at forenkle din kode og gøre dine projekter mere fleksible og vedligeholdelige. Dens brede vifte af hjælpefunktioner, udbredte anvendelse og regelmæssige opdateringer vil hjælpe dig med at skrive elegant, effektiv kode. Du kan bruge lodash til at garantere, at din kode altid er aktuel og kompatibel med moderne browsere.