将数组中的某些字符串大写

Capitalizing certain strings in an array

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

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('');
}

您需要分配值:

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('');
    }

您可以尝试关注

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