DEV Community

NJOKU SAMSON EBERE
NJOKU SAMSON EBERE

Posted on • Edited on

Algorithm 101: 8 Ways to Capitalize a Sentence

In changing the case of a word or sentence to uppercase or lowercase, we can employ the toUpperCase() or toLowerCase() javascript's built-in method respectively. How about Capitalizing a word or sentence? There is no built-in method yet that I know of in Javascript. Do you know of any?

This episode of Algorithm 101 shows us 8 Ways to Capitalize a Given Sentence.

 sentenceCapitalization('njoku'); // "Njoku" sentenceCapitalization('njoku samson ebere'); // "Njoku Samson Ebere" 
Enter fullscreen mode Exit fullscreen mode

Prerequisite

To tag along comfortably, you need to have basic understanding of javascript's string and array methods.

Let's Capitalize a Sentence Using:

  • .forEach(), toLowerCase(), split(), slice(), toUpperCase(), push() and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; sentence .toLowerCase() .split(" ") .forEach(element => { let fistElement = element[0].toUpperCase(); let splicedElement = element.slice(1); capitalizedSentence.push(fistElement + splicedElement); }); return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • .map(), toLowerCase(), split(), slice(), toUpperCase(), push() and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; sentence .toLowerCase() .split(" ") .map(word => { capitalizedSentence.push(word[0].toUpperCase() + word.slice(1)); }); return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • .map(), toLowerCase(), split(), toUpperCase(), push(), replace() and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; sentence .toLowerCase() .split(" ") .map(word => { let newWord = word.replace(word[0], word[0].toUpperCase()); capitalizedSentence.push(newWord); }); return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • .map(), toLowerCase(), split(), toUpperCase(), replace() and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; capitalizedSentence = sentence .toLowerCase() .split(" ") .map(word => { return word.replace(word[0], word[0].toUpperCase()); }); return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • .map(), toLowerCase(), split(), toUpperCase(), slice() and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; capitalizedSentence = sentence .toLowerCase() .split(" ") .map(word => { return word[0].toUpperCase() + word.slice(1); }); return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • for...of, toLowerCase(), split(), toUpperCase(), splice(), push(), spread operator, and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; let newSentence = sentence.toLowerCase().split(" "); for (word of newSentence) { let newWord = word[0].toUpperCase() + [...word].splice(1).join(""); capitalizedSentence.push(newWord); } return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • for...in, toLowerCase(), split(), toUpperCase(), splice(), push(), spread operator and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; let newSentence = sentence.toLowerCase().split(" "); for (word in newSentence) { let newWord = newSentence[word][0].toUpperCase() + [...newSentence[word]].splice(1).join(""); capitalizedSentence.push(newWord); } return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode
  • forEach...loop, toLowerCase(), split(), toUpperCase(), replace(), push() and join()
 function sentenceCapitalization(sentence) { let capitalizedSentence = []; let newSentence = sentence.toLowerCase().split(" "); newSentence.forEach(element => { let newWord = element.replace(element[0], element[0].toUpperCase()); capitalizedSentence.push(newWord); }); return capitalizedSentence.join(" "); } 
Enter fullscreen mode Exit fullscreen mode

Conclusion

There are many ways to solve problems programmatically. You are only limited by your imagination. I will love to know other ways you solved yours in the comment section.

If you have questions, comments or suggestions, please drop them in the comment section.

Up Next: Algorithm 101: 6 Ways to Check if a Word is a Palindrome

You can also follow and message me on social media platforms.

Twitter | LinkedIn | Github

Thank You For Your Time.

Top comments (0)