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