【问题标题】:Capitalizing certain strings in an array [duplicate]将数组中的某些字符串大写[重复]
【发布时间】:2018-10-21 10:15:34
【问题描述】:

我基本上想将句子中每个单词的第一个字母大写,假设 str 都是小写的。所以在这里,我尝试逐个字母地拆分字符串,然后通过使用 for 循环,我会将空格后的任何字母大写。这是我的代码,您能指出我在哪里编码错误吗?谢谢。

function titleCase(str) {
  var strArray = str.split('');
  strArray[0].toUpperCase();
  for (i=0; i<strArray.length;i++){
    if (strArray[i]===" "){
      strArray[i+1].toUpperCase();
    }
  }
  return strArray.join('');
}

【问题讨论】:

标签: javascript arrays string uppercase


【解决方案1】:

您需要分配值:

function titleCase(str) {
      var strArray = str.split('');
      strArray[0] = strArray[0].toUpperCase();
      for (i=0; i<strArray.length;i++){
        if (strArray[i]===" "){
          strArray[i+1] = strArray[i+1].toUpperCase();
        }
      }
      return strArray.join('');
    }

【讨论】:

  • 哇,这是一个愚蠢的错误。非常感谢!
【解决方案2】:

您可以尝试关注

function titleCase(str) {
  var strArray = str.split(' ');
  for (i=0; i<strArray.length;i++){
      strArray[i] = strArray[i].charAt(0).toUpperCase() + strArray[i].slice(1);
  }
  return strArray.join(' ');
}


console.log(titleCase("i am a sentence"));

【讨论】:

    猜你喜欢
    • 2015-06-01
    • 2011-11-30
    • 2019-12-24
    • 2013-01-05
    • 2023-03-08
    • 2017-05-17
    • 1970-01-01
    • 1970-01-01
    • 2023-02-22
    相关资源
    最近更新 更多