Last active
May 3, 2019 17:00
-
-
Save zenius/0bc9d6763a39f300f19b9cc967cdad0f to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Getting functions to work together is function composition. | |
const uppercaseString = (string) => string.toUpperCase(); | |
const reverseString = (string) => string.split("").reverse().join(""); | |
const upperAndReverseName = (string) => { | |
const upperCasedName = uppercaseString(name); | |
return reverseString(upperCasedName); | |
}; | |
const name ="John"; | |
const result = upperAndReverseName(name); | |
console.log({ result }); // { result: "NHOJ" } | |
// Beauty of Function Composition | |
Now let us consider the scenario where you have list of names. | |
const uppercaseString = (string) => string.toUpperCase(); | |
const reverseString = (string) => string.split("").reverse().join(""); | |
const upperAndReverseName = (string) => { | |
const upperCasedName = uppercaseString(string); | |
return reverseString(upperCasedName); | |
}; | |
const upperAndReverseNameAll = (names) => { | |
return names.map(upperAndReverseName); | |
} | |
const names = [ "John", "Gary", "Stark" ]; | |
const result = upperAndReverseNameAll(names); | |
console.log({ result }); // { [ "NHOJ", "YRAG", "KRATS" ] } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment