Maison >interface Web >js tutoriel >Comment mettre en majuscule la première lettre de chaque mot dans une chaîne en JavaScript ?
J'ai du mal à mettre en majuscule la première lettre de chaque mot dans une chaîne. Plus précisément, ma fonction convertit « Je suis une petite théière » en « Je suis une petite théière » au lieu du résultat souhaité, « Je suis une petite théière ». Voici mon code JavaScript :
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"));
L'erreur dans votre code réside dans le fait que le mot modifié n'est pas réattribué correctement au tableau. Pour résoudre ce problème, modifiez votre code comme suit :
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"));
Modifications apportées :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!