loadash pick property from object by different name

How to use Loadash to pick a property from an object by a different name

If you are working with objects in JavaScript, you may come across a situation where you need to pick a property from an object by a different name. This can be achieved using Loadash library.

Using Loadash Pick Method

To pick a property from an object using a different name, we can use Loadash's pick method. The pick method returns a new object with the specified properties picked from the original object.

For example, consider the following object:


const user = {
  name: 'John Doe',
  age: 30,
  email: '[email protected]'
};

If we want to pick the 'name' property from the user object and rename it as 'fullName', we can use the pick method as follows:


const fullName = _.pick(user, ['name']);
const userWithFullName = { ...user, fullName };

The above code will create a new object with the 'name' property picked from the user object and renamed as 'fullName'. This new object will also contain all other properties of the original object.

Using Loadash MapKeys Method

Another way to achieve the same result is by using Loadash's mapKeys method. The mapKeys method creates a new object with the keys of the original object mapped to new keys.

For example, consider the following object:


const user = {
  name: 'John Doe',
  age: 30,
  email: '[email protected]'
};

If we want to rename the 'name' property as 'fullName', we can use the mapKeys method as follows:


const renamedUser = _.mapKeys(user, (value, key) => {
  if (key === 'name') {
    return 'fullName';
  }
  return key;
});

The above code will create a new object with the 'name' property renamed as 'fullName'. This new object will also contain all other properties of the original object.

Conclusion

Both the pick and mapKeys methods of Loadash can be used to pick a property from an object by a different name. The choice of method depends on the specific use case.

Subscribe to The Poor Coder | Algorithm Solutions

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
[email protected]
Subscribe