Det krävs inte bara för en utvecklare att utföra uppgifter, utan det är också nödvändigt att utföra uppgifter på ett mer effektivt sätt. Det finns flera bibliotek tillgängliga i JavaScript idag som gör det lättare för utvecklare att arbeta med variabler. Vi kommer att lära oss hur du använder Lodash-bibliotekets vanligaste funktioner i den här handledningen.
Om du inte har provat Lodash än, är det nu. Lodash är ett modernt JavaScript-verktygspaket som förenklar arbetet med arrayer, heltal, objekt, texter och andra datatyper.
Det kommer att hjälpa dig att hantera olika typer av objekt och kommer att spara tid genom att eliminera behovet av att koda generiska metoder. Din kod blir renare med färre rader och fungerar i alla webbläsare. Om du inte redan använder det bör du noggrant överväga det.
Att inte använda Lodash är en stor förlust för våra JavaScript-kodbaser. Det är en buggfri och elegant lösning på vanliga utmaningar vi har på jobbet, och att använda den kommer bara att göra vår kod mer läsbar och hanterbar.
Låt oss fördjupa oss i några av de mer populära (eller inte!) Lodash-funktionerna och upptäcka hur extremt användbart och vackert det här biblioteket är.
1. _.sortedUniq
Alla dubblerade värden kommer inte att returneras med denna. Eftersom det bara är för sorterade arrayer, används detta främst av hastighetsskäl. Detta är bara användbart om du har att göra med en stor array. Om du vill förbättra hastigheten, sortera din array och använd metoder som fungerar bättre med sorterade arrays.
Lodash har ett antal andra funktioner som liknar denna. Du kan titta på .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexOf, .sortedUniq, .sortedUniqBy, .sortedUniqBy, .SortedUniqBy,Bysorted.
2. _.minska
_.reduce liknar en filterfunktion. Den enda skillnaden är att du har möjlighet att välja formen för det returnerade objektet. Det är normalt, om du inte förstår vad jag säger; det finns ett exempel på det.
I huvudsak returnerar vi ett nytt objekt som innehåller användare klassificerade efter ålder, men bara för de i åldern 18 till 59. Denna Lodash-hjälpfunktion är en av de mest använda. Det ingår också i ES6. Jag skulle också vilja påpeka två typiska misstag: kom ihåg att returnera resultatet vid slutet av funktionen, och ange standardvärdet för resultatet som den tredje parametern (här).
3. _.get och ._set
För den här kommer jag att lura dig något genom att visa två funktioner som utför nästan samma sak. _.get returnerar ett egenskapsvärde från ett objekt, och _.set, ja, du gissade rätt, ställ in en egenskap med ett värde. Inget unikt, förutom att du kan komma åt en fastighet genom dess väg.
Låt oss titta på ett exempel.
Om sökvägen inte finns när _.set anropas kommer den att genereras. Det kommer inte att finnas fler "Kan inte ställa in egenskapen "objekt" för odefinierade" fel. Om sökvägen inte finns kommer _.get att returnera odefinierat istället för ett fel. Om sökvägen löser sig till odefinierad kan du också ange ett standardvärde (tredje parameter).
4. _.hitta
Istället för att gå igenom en array för att hitta ett enda objekt kan vi använda _.find. Det är bra, men det är inte det enda _.find kan göra. Med en enda kodrad kan du också upptäcka ett objekt genom att använda många egenskaper. Kolla in det!
5. _.keyBy
En av mina favoriter är _.keyBy. Det är ganska användbart när man försöker få ett objekt med ett visst attribut. Anta att vi har 100 blogginlägg och vill ta tag i den med ID:t "34abc." Hur ska vi göra det? Vi får se vad som händer! Den här metoden kan hjälpa dig att ordna en objektsamling om en server tillhandahåller den som en array. En funktion kan också användas som det andra argumentet.
6. _.för varje
Denna metod kommer att iterera över en rad objekt ett efter ett, så att du kan göra vilken logik du vill. I det här första exemplet kommer jag att gå över en lista med användarobjekt och slå samman deras för- och efternamn för att skapa en ny egenskap som heter fullName.
för Var och en av dessa accepterar två parametrar. Arrayen vi loopar över är den första parametern. Det andra argumentet är en iterationsfunktion, där den första parametern är den individuella artikelreferensen och den andra är iterationens aktuella index.
7. _.karta
Map, som forEach, itererar över en rad värden. Kartfunktionen, å andra sidan, returnerar en ny array av värden som tillhandahålls av iterationsfunktionen. Vi använder samma samling användare som i vårt exempel för varje här. Vi kan använda _.map för att generera en ny variabel som har en tillplattad array av alla användarnas fullständiga namn.
8. _.skillnad
Differensfunktionen kommer att producera en ny array av värden som skiljer sig mellan den första och andra arrayen. Det är viktigt att notera att placeringen av argumenten påverkar resultaten.
9. _.få
Funktionen _.get() kan hjälpa oss att lokalisera ett element i ett objekt. Vi kan ställa in ett standardvärde för funktionen _.get() att returnera om ett element inte hittas vid den angivna sökvägen. Funktionen _.get() tar tre parametrar, varav den första är objektet från vilket vi vill hämta ett element. Vägen är den andra. Det tredje värdet är standardvärdet vi vill returnera om ett element inte kan lokaliseras.
10. _.hitta
Funktionen _find() kan tyckas vara identisk med metoden _.get(). Funktionen _.find(), liksom metoden _.get(), accepterar tre parametrar. Men till skillnad från metoden _.get() kan det första argumentet vara en array eller ett objekt. Det andra argumentet anger funktionen som kommer att anropas vid varje iteration. Den tredje ingången är samlingens början index. Eftersom funktionen _.find() itererar över varje element i en samling.
11. _.groupBy
Skapa ett objekt namngivet av resultatet av en funktion (eller ett slumpmässigt valt egenskapsnamn), där varje värde är en array av objekt med samma nyckel.
12. _.set
Metoden _.set() är inversen av metoden _.get(). Det kommer att ändra värdet på ett element vid en given väg. Objektet eller matrisen är den första parametern, sökvägen är den andra och värdet du vill ställa in är den tredje.
13. _.sammanfoga
Det fungerar på samma sätt som Object.assign, förutom att det återkommer djupt in i den underliggande strukturen för att uppdatera de djupare objekten istället för att ersätta dem.
14. ._deburr
Detta är ett ganska okomplicerat exempel. Alla "kombinerande diakritiska markeringar" tas bort. Så "é" blir "e". När det finns internationalisering och lokalisering är det bra att avgrada text för sökfunktioner.
15. _.debounce
Detta är en av de mest effektiva Lodash-strategierna. Det kan också vara svårt att förstå vad det gör och när du ska använda det. Metoden _.debounce() returnerar en funktion. _.debounce()-metodens funktion kommer att fördröja anropet tills ett specificerat antal millisekunder har gått sedan funktionen senast anropades.
Slutsats
Lodash är en kraftfull förlängning av JavaScript-språket. Med minimal ansträngning kan man bygga en kortfattad och effektiv kod. Lodash är också helt modulärt. Även om vissa av dess funktioner i slutändan kan föråldras, tror jag att det fortfarande kommer att ge många fördelar för utvecklare samtidigt som det driver utvecklingen av JS-språket.
Jag hoppas att dessa få Lodash-funktioner hjälper dig att se hur kraftfull Lodash kan vara när du arbetar med arrayer, objekt och samlingar. Du kan besöka dokumentation att utforska en uppsjö av andra alternativ som den har att erbjuda.
Kommentera uppropet