Det er ikke bare nødvendig for en utvikler å fullføre oppgaver, men det er også nødvendig å gjøre oppgaver på en mer effektiv måte. Det er flere biblioteker tilgjengelig i JavaScript i dag som gjør arbeid med variabler enklere for utviklere. Vi vil lære hvordan du bruker Lodash-bibliotekets vanligste funksjoner i denne opplæringen.
Hvis du ikke har prøvd Lodash ennå, er det øyeblikket nå. Lodash er en moderne JavaScript-verktøypakke som forenkler arbeidet med matriser, heltall, objekter, tekster og andre datatyper.
Det vil hjelpe deg med å håndtere ulike typer objekter og vil spare deg tid ved å eliminere behovet for å kode generiske metoder. Koden din blir renere med færre linjer og vil fungere i alle nettlesere. Hvis du ikke allerede bruker det, bør du vurdere det nøye.
Å ikke ta i bruk Lodash er et stort tap for JavaScript-kodebasene våre. Det er en feilfri og elegant løsning på vanlige utfordringer vi har på jobben, og bruk av den vil bare gjøre koden vår mer lesbar og håndterbar.
La oss fordype oss i noen av de mer populære (eller ikke!) Lodash-funksjonene og oppdage hvor ekstremt nyttig og vakkert dette biblioteket er.
1. _.sortedUniq
Alle dupliserte verdier vil ikke bli returnert med denne. Fordi det bare er for sorterte arrays, brukes dette hovedsakelig av hastighetsgrunner. Dette er bare nyttig hvis du har å gjøre med et stort utvalg. Hvis du ønsker å forbedre hastigheten, sorter matrisen og bruk metoder som fungerer bedre med sorterte matriser.
Lodash har en rekke andre funksjoner som ligner på denne. Du kan se på .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexOf, .sortedUniq, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy,Bysorted.
2. _.redusere
_.reduce ligner på en filterfunksjon. Den eneste forskjellen er at du har muligheten til å velge formen til det returnerte objektet. Det er normalt, hvis du ikke forstår hva jeg sier; det er et eksempel på det.
I hovedsak returnerer vi et nytt objekt som inneholder brukere klassifisert etter alder, men bare for de i alderen 18 til 59. Denne Lodash-hjelpefunksjonen er en av de mest brukte. Den er også inkludert i ES6. Jeg vil også påpeke to typiske feil: husk å returnere resultatet ved avslutningen av funksjonen, og angi standardverdien for resultatet som den tredje parameteren (her).
3. _.get og ._set
For denne vil jeg lure deg litt ved å vise to funksjoner som utfører nesten det samme. _.get returnerer en egenskapsverdi fra et objekt, og _.set, vel, du gjettet riktig, sett en egenskap med en verdi. Ikke noe unikt, bortsett fra at du kan få tilgang til en eiendom gjennom veien.
La oss se på et eksempel.
Hvis banen ikke eksisterer mens du kaller _.set, vil den bli generert. Det vil ikke være flere "Kan ikke angi egenskapen 'elementer' av udefinerte" feil. Hvis banen ikke eksisterer, vil _.get returnere undefined i stedet for en feil. Hvis banen blir udefinert, kan du også oppgi en standardverdi (tredje parameter).
4. _.finn
I stedet for å gå gjennom en matrise for å finne et enkelt objekt, kan vi bruke _.find. Det er bra, men det er ikke det eneste _.find kan gjøre. Med en enkelt kodelinje kan du også oppdage et objekt ved å bruke en rekke egenskaper. Sjekk det ut!
5. _.keyBy
En av mine favoritter er _.keyBy. Det er ganske nyttig når du prøver å få tak i et objekt med en bestemt egenskap. Anta at vi har 100 blogginnlegg og ønsker å ta den med ID-en "34abc." Hvordan skal vi gjøre det? La oss se hva som skjer! Denne metoden kan hjelpe deg med å arrangere en objektsamling hvis en server gir den som en matrise. En funksjon kan også brukes som det andre argumentet.
6. _.forHver
Denne metoden vil iterere over en rekke objekter én etter én, slik at du kan gjøre den logikken du vil. I dette første eksemplet vil jeg gå over en liste over brukerobjekter, og slå sammen deres for- og etternavn for å lage en ny egenskap kalt fullName.
for Hver av disse godtar to parametere. Matrisen vi går over er den første parameteren. Det andre argumentet er en iterasjonsfunksjon, der den første parameteren er den individuelle varereferansen og den andre er iterasjonens gjeldende indeks.
7. _.kart
Kart, som forEach, itererer på tvers av en rekke verdier. Kartfunksjonen, på den annen side, returnerer en ny rekke verdier levert av iterasjonsfunksjonen. Vi bruker den samme samlingen av brukere som i vårt forHver eksempel her. Vi kan bruke _.map for å generere en ny variabel som har en sammenslått rekke av alle brukernes fullstendige navn.
8. _.forskjell
Differansefunksjonen vil produsere en ny matrise med verdier som er forskjellig mellom den første og andre matrisen. Det er viktig å merke seg at plasseringen av argumentene påvirker resultatene.
9. _.få
Funksjonen _.get() kan hjelpe oss med å finne et element i et objekt. Vi kan angi en standardverdi for _.get()-funksjonen som skal returneres hvis et element ikke finnes på den oppgitte banen. Funksjonen _.get() tar tre parametere, hvorav den første er objektet vi ønsker å hente et element fra. Stien er den andre. Den tredje verdien er standardverdien vi ønsker å returnere hvis et element ikke kan lokaliseres.
10. _.finn
_find()-funksjonen kan se ut til å være identisk med _.get()-metoden. _.find()-funksjonen, som _.get()-metoden, godtar tre parametere. Men i motsetning til _.get()-metoden, kan det første argumentet være en matrise eller et objekt. Det andre argumentet spesifiserer funksjonen som skal kalles på hver iterasjon. Den tredje inngangen er samlingens begynnelsesindeks. Fordi funksjonen _.find() itererer over hvert element i en samling.
11. _.groupBy
Lag et objekt navngitt etter resultatet av en funksjon (eller et tilfeldig valgt egenskapsnavn), der hver verdi er en rekke objekter med samme nøkkel.
12. _.sett
Metoden _.set() er inversen av metoden _.get(). Det vil endre verdien til et element ved en gitt bane. Objektet eller matrisen er den første parameteren, banen er den andre, og verdien du vil angi er den tredje.
13. _.sammenslå
Den fungerer på samme måte som Object.assign, bortsett fra at den går tilbake dypt inn i den underliggende strukturen for å oppdatere de dypere objektene i stedet for å erstatte dem.
14. ._deburr
Dette er et ganske enkelt eksempel. Alle "kombinerende diakritiske markeringer" fjernes. Dermed blir "é" til "e". Når det er internasjonalisering og lokalisering, er det en god praksis å avgrade tekst for søkefunksjoner.
15. _.debounce
Dette er en av de mest effektive Lodash-strategiene. Det kan også være vanskelig å forstå hva det gjør og når du bør bruke det. Metoden _.debounce() returnerer en funksjon. _.debounce()-metodens funksjon vil utsette påkallingen til et spesifisert antall millisekunder har gått siden funksjonen sist ble påkalt.
konklusjonen
Lodash er en kraftig utvidelse av JavaScript-språket. Med minimal innsats kan man bygge kortfattet og effektiv kode. Lodash er også helt modulært. Selv om noen av funksjonene til slutt kan bli avviklet, tror jeg det fortsatt vil gi mange fordeler for utviklere, samtidig som det driver utviklingen av JS-språket.
Jeg håper disse få Lodash-funksjonene hjelper deg å se hvor kraftig Lodash kan være når du arbeider med matriser, objekter og samlinger. Du kan besøke dokumentasjon å utforske en mengde andre alternativer den har å tilby.
Legg igjen en kommentar