Heim  >  Artikel  >  Web-Frontend  >  Wie schreibe ich den ersten Buchstaben jedes Wortes in einer Zeichenfolge in JavaScript groß?

Wie schreibe ich den ersten Buchstaben jedes Wortes in einer Zeichenfolge in JavaScript groß?

Linda Hamilton
Linda HamiltonOriginal
2024-10-23 12:52:01530Durchsuche

How to Capitalize the First Letter of Each Word in a String in JavaScript?

Ersten Buchstaben jedes Wortes in einer Zeichenfolge mit JavaScript groß schreiben

Frage:

Ich habe Mühe, den ersten Buchstaben jedes Wortes in groß zu schreiben eine Zeichenfolge. Konkret wandelt meine Funktion „Ich bin eine kleine Teekanne“ in „Ich bin eine kleine Teekanne“ um, statt in die gewünschte Ausgabe „Ich bin eine kleine Teekanne“. Hier ist mein JavaScript-Code:

function titleCase(str) {
  var splitStr = str.toLowerCase().split(" ");

  for (var i = 0; i < splitStr.length; i++) {
    if (splitStr.length[i] < splitStr.length) {
      splitStr[i].charAt(0).toUpperCase();
    }

    str = splitStr.join(" ");
  }

  return str;
}

console.log(titleCase("I'm a little tea pot"));

Antwort:

Der Fehler in Ihrem Code liegt darin, dass das geänderte Wort nicht korrekt wieder dem Array zugewiesen wird. Um dieses Problem zu beheben, ändern Sie Ihren Code wie folgt:

function titleCase(str) {
   var splitStr = str.toLowerCase().split(' ');
   for (var i = 0; i < splitStr.length; i++) {
       // No need to check if i is larger than splitStr length, as your for loop does that for you
       // Assign it back to the array
       splitStr[i] = splitStr[i].charAt(0).toUpperCase() + splitStr[i].substring(1);     
   }
   // Return the joined string directly
   return splitStr.join(' '); 
}

document.write(titleCase("I'm a little tea pot"));

Vorgenommene Änderungen:

  • Die unnötige Längenprüfung in der if-Anweisung wurde entfernt.
  • Zugewiesen Großgeschriebenes Wort zurück zum Array (z. B. splitStr[i] = ...), anstatt nur charAt(0).toUpperCase() aufzurufen.
  • SplitStr.join('') direkt zurückgegeben, anstatt es zuerst neu zuzuweisen es zu str.

Das obige ist der detaillierte Inhalt vonWie schreibe ich den ersten Buchstaben jedes Wortes in einer Zeichenfolge in JavaScript groß?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn