12

我到处寻找如何将字符串中每个单词的第一个字符大写,但没有任何帮助。我需要将输入的字符串设置为标题大写字母小写。我试过这个:

函数titleCase(str){//将给定字符串转换为数组str=str.split(“”);//迭代数组中的所有元素对于(var i=0;i<str.length;i++){//转换每个元素。成串str[i]=str[i].toString();//将第一个字符转换为大写&连接到其余字符str[i]=字符串[i].toUpperCase(str[i].charAt(0))+字符串[i].substring(1);}返回str;}titleCase(“我是一个小茶壶”);

5
  • 你是指字符串中每个单词的第一个字符? 2015年12月11日6:27
  • 2
    请在此处找到您的答案JavaScript中字符串的第一个字母大写 2015年12月11日6:28
  • 我是一个小茶壶预期输出
    – 图沙尔
    2015年12月11日6:34
  • @Tushar我想是的……从gurvinder那里得到了一个有效的答案372
    – 本茨基
    2015年12月11日8:14
  • @benzkji你看不到删除的答案,我也有答案函数titleCase(str){str=str.split(“”);for(var i=0;i<str.length;i++var str=titleCase(“我是一个小茶壶”); var str=“我是一个小茶壶”;str=str.replace(/^[a-z]| \s[a-z]/g,函数(m){return m.toUpperCase();});
    – 图沙尔
    2015年12月11日8:38

5个答案5

重置为默认值

如果您想将字符串中每个单词的第一个字符大写(看起来就像您对代码所做的那样)

函数titleCase(str){str=str.split(“”);for(var i=0;i<str.length;i++){        str[i]=str[i].charAt(0).toUpperCase+str[i'.substring(1);}return str.join(“”);}alert(titleCase(“我是一个小茶壶”);
1
  • 1
    这是正确的答案。。。
    – 本茨基
    2015年12月11日8:14
2
函数firstToUpperCase(str){return str.substr(0,1).toUpperCase()+str.substr(1);}var str='你好,我是字符串';var uc_str=第一个到UpperCase(str);控制台.log(uc_str)//你好,我是一根绳子
0
2
函数大写(字符串){return string.charAt(0).toUpperCase()+string.slice(1).toLowerCase(;}大写(“小写字母”);//小写字母
1

你可以简单地:

函数capitalFirst(str){return str.charAt(0).toUpperCase()+str.slice(1);}
1

尝试以下操作:

String.prototype.titleCase=函数(){返回this[0].toUpperCase()+this.slice(1)}

用法:

“你好,我叫雅克”.titleCase();

如果要在每个单词的开头大写字符,请尝试如下操作:

String.prototype.capitalize=函数(){返回this.split(“”).map(函数(){return this[0].toUpperCase()+this.slice(1);}).加入(“”);}

不是你想要的答案吗?浏览标记的其他问题问你自己的问题