如何在javascript中对字符串中每个单词的第一个字符进行说明?

how to captalize the first character of every word of a string in javascript?

本问题已经有最佳答案,请猛点这里访问。

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

1
2
3
4
5
6
7
8
9
10
11
12
13
function titleCase(str) {
//converting the giving string into array
  str =str.split("");
//iterating over all elem.s in the array
  for(var i=0;i<str.length;i++){        
//converting each elem. into string
    str[i]=str[i].toString();
//converting the first char to upper case &concatenating to the rest chars
    str[i]=str[i].toUpperCase(str[i].charAt(0))+ str[i].substring(1);
  }
  return str;
}
titleCase("I'm a little tea pot");


如果您想将字符串中每个单词的第一个字符都大写(看起来就像您在处理代码一样)

1
2
3
4
5
6
7
8
9
function 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("I'm a little tea pot") );


1
2
3
4
    function capitalise(string) {
        return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
    }
   capitalise("smallletters") ;// Smallletters


1
2
3
4
5
6
7
8
function firstToUpperCase( str ) {
    return str.substr(0, 1).toUpperCase() + str.substr(1);
}

var str = 'hello, I\'m a string';
var uc_str = firstToUpperCase( str );

console.log( uc_str ); //Hello, I'm a string

尝试如下操作:

1
2
3
String.prototype.titleCase = function(){
    return this[0].toUpperCase() + this.slice(1)
}

用途:

1
"hello my name is Jacques".titleCase();

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

1
2
3
4
5
6
String.prototype.capitalize = function(){
    return this.split("")
               .map(function(){
                   return this[0].toUpperCase() + this.slice(1);
               }).join("");
}

你可以简单地做:

1
2
3
function capitalFirst(str) {
    return str.charAt(0).toUpperCase() + str.slice(1);
}