Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Capitalize the first letter of every word

Tags:

javascript

I want to use a javascript function to capitalize the first letter of every word

eg:

THIS IS A TEST ---> This Is A Test
this is a TEST ---> This Is A Test
this is a test ---> This Is A Test

What would be a simple javascript function

like image 884
David Avatar asked Sep 19 '11 06:09

David


1 Answers

Here's a little one liner that I'm using to get the job done

var str = 'this is an example';
str.replace(/\b./g, function(m){ return m.toUpperCase(); });

but John Resig did a pretty awesome script that handles a lot of cases http://ejohn.org/blog/title-capitalization-in-javascript/

Update

ES6+ answer:

str.split(' ').map(s => s.charAt(0).toUpperCase() + s.slice(1)).join(' ');

There's probably an even better way than this. It will work on accented characters.

like image 154
Stephen Avatar answered Oct 04 '22 10:10

Stephen