Capitalize the first letter of every word

前端 未结 8 1797
梦谈多话
梦谈多话 2020-12-09 17:21

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 ---> Th         


        
8条回答
  •  情书的邮戳
    2020-12-09 17:58

    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.

提交回复
热议问题