如何在javascript中将字符串的每个单词的第一个字符大写? [复制]

Posted

技术标签:

【中文标题】如何在javascript中将字符串的每个单词的第一个字符大写? [复制]【英文标题】:how to captalize the first character of every word of a string in javascript? [duplicate] 【发布时间】:2016-03-17 00:01:23 【问题描述】:

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

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");

【问题讨论】:

你的意思是字符串中每个单词的第一个字符? 请在这里找到你的答案Capitalize the first letter of string in javascript I'm A Little Tea Pot 预期输出 @Tushar 我猜是这样......从 gurvinder372 得到了一个有效的答案 @benzkji 你看不到已删除的答案,我也有答案function titleCase(str) str = str.split(" "); for (var i = 0; i &lt; str.length; i++) str[i] = str[i][0].toUpperCase() + str[i].substring(1); return str.join(' '); var str = titleCase("I'm a little tea pot"); var str = "i'm a little tea pot"; str = str.replace(/^[a-z]|\s[a-z]/g, function(m) return m.toUpperCase(); ); 【参考方案1】:
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

【讨论】:

【参考方案2】:
    function capitalise(string) 
        return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
    
   capitalise("smallletters") ;// Smallletters

【讨论】:

【参考方案3】:

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

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") );

【讨论】:

这是正确答案...【参考方案4】:

你可以这样做:

function capitalFirst(str) 
    return str.charAt(0).toUpperCase() + str.slice(1);

【讨论】:

【参考方案5】:

试试这样的:

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

用法:

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

如果您想将每个单词开头的字符大写,请尝试以下操作:

String.prototype.capitalize = function()
    return this.split(" ")
               .map(function()
                   return this[0].toUpperCase() + this.slice(1);
               ).join(" ");

【讨论】:

以上是关于如何在javascript中将字符串的每个单词的第一个字符大写? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Perl 中将字符串中每个单词的首字母大写?

Java如何将每个单词的第一个字符转为大写?

如何使用 Javascript 分解 HTML 字符串中的每个单词,然后在 HTML 中一个一个地显示每个单词? [复制]

如何大写字符串中每个单词的第一个字符

JavaScript将字符串中的每一个单词的第一个字母变为大写其余均为小写

如何使用 JavaScript 将字符串中每个单词的首字母大写?