Maison >interface Web >js tutoriel >Comment mettre en majuscule la première lettre de chaque mot dans une chaîne en JavaScript ?

Comment mettre en majuscule la première lettre de chaque mot dans une chaîne en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-23 12:52:01621parcourir

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

Mise en majuscule de la première lettre de chaque mot dans une chaîne à l'aide de JavaScript

Question :

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

Réponse :

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 :

  • Suppression de la vérification de longueur inutile dans l'instruction if.
  • Attribution du mot en majuscule dans le tableau (par exemple, splitStr[i] = ...) au lieu de simplement appeler charAt(0).toUpperCase().
  • Renvoi splitStr.join(' ') directement au lieu de d'abord réaffecter à str.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn