Introduction to lodash
lodash is a modern JavaScript utility library delivering modularity, performance & extras. It allows developers to work with arrays, numbers, objects, strings, etc., in an easier and more efficient way. Below are some key lodash functions you should know.
lodash API Examples
1. _.chunk
Creates an array of elements split into groups the length of size
. If array can’t be split evenly, the final chunk will be the remaining elements.
_.chunk(['a', 'b', 'c', 'd'], 2);
// => [['a', 'b'], ['c', 'd']]
2. _.compact
Creates an array with all falsey values removed. The values false, null, 0, “”, undefined, and NaN are falsey.
_.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]
3. _.concat
Creates a new array concatenating array with any additional arrays and/or values.
var array = [1];
var other = _.concat(array, 2, [3], [[4]]);
console.log(other);
// => [1, 2, 3, [4]]
console.log(array);
// => [1]
4. _.difference
Creates an array of array values not included in the other given arrays. The order and references of result values are determined by the first array.
_.difference([3, 2, 1], [4, 2]);
// => [3, 1]
5. _.findIndex
This method is like _.find
except that it returns the index of the first element predicate returns truthy for instead of the element itself.
var users = [
{ 'user': 'barney', 'active': false },
{ 'user': 'fred', 'active': false },
{ 'user': 'pebbles', 'active': true }
];
_.findIndex(users, function(o) { return o.user == 'barney'; });
// => 0
6. _.flatten
Flattens array a single level deep.
_.flatten([1, [2, [3, [4]], 5]]);
// => [1, 2, [3, [4]], 5]
Application Example using lodash
Let’s build a simple application that manipulates a list of users using lodash functions.
const _ = require('lodash');
let users = [
{ 'user': 'fred', 'age': 48 },
{ 'user': 'barney', 'age': 34 },
{ 'user': 'fred', 'age': 40 },
{ 'user': 'barney', 'age': 36 }
];
// Remove all duplicate user objects based on user names
users = _.uniqBy(users, 'user');
console.log(users);
// => [ { 'user': 'fred', 'age': 48 }, { 'user': 'barney', 'age': 34 } ]
// Find the index of the first user who is older than 35
const index = _.findIndex(users, (user) => user.age > 35);
console.log(index);
// => 0
// Chunk the users into groups of 1
const userChunks = _.chunk(users, 1);
console.log(userChunks);
// => [[{ 'user': 'fred', 'age': 48 }], [{ 'user': 'barney', 'age': 34 }]]
With lodash, working with data collections is much easier, cleaner, and often more performant. Whether you’re dealing with arrays, objects, or even complex manipulations, lodash is a powerful library to add to your JavaScript toolkit.
Hash: 94a755535d135f12850ccd5848d10cc7266bbcdb74ad22c7817228ce7abaa506