diff --git a/snippets/lowercaseKeys.md b/snippets/lowercaseKeys.md new file mode 100644 index 000000000..7612e42bc --- /dev/null +++ b/snippets/lowercaseKeys.md @@ -0,0 +1,18 @@ +### lowercaseKeys + +Creates a new object from the specified object, where all the keys are in lowercase. + +Use `Object.keys()` and `Array.reduce()` to create a new object from the specified object. +Convert each key in the original object to lowercase, using `String.toLowerCase()`. + +```js +const lowercaseKeys = obj => + Object.keys(obj).reduce((acc,key) => {acc[key.toLowerCase()] = obj[key]; return acc;},{}); +``` + +```js +let myObj = {Name: 'Adam', sUrnAME: 'Smith'}; +let myObjLower = lowercaseKeys(myObj); +console.log(myObj); // {Name: 'Adam', sUrnAME: 'Smith'}; +console.log(myObjLower); // {name: 'Adam', surname: 'Smith'}; +``` diff --git a/tag_database b/tag_database index 8a579166f..30e6dad09 100644 --- a/tag_database +++ b/tag_database @@ -78,6 +78,7 @@ JSONToDate:date JSONToFile:node last:array lcm:math +lowercaseKeys:object mapObject:array median:math negate:logic