Maison > interface Web > js tutoriel > Comment convertir des nombres JavaScript en mots avec des zéros de début et de fin ?

Comment convertir des nombres JavaScript en mots avec des zéros de début et de fin ?

Barbara Streisand
Libérer: 2024-11-29 11:18:11
original
388 Les gens l'ont consulté

How to Convert JavaScript Numbers to Words with Leading and Trailing Zeros?

Comment convertir des nombres JavaScript en mots

Vous pouvez rencontrer des scénarios dans lesquels vous devez convertir des valeurs numériques en leurs équivalents écrits. En JavaScript, cette tâche peut être accomplie grâce à une approche systématique.

Processus de conversion étape par étape :

  1. Chiffres séparés : Divisez le nombre en groupes de trois chiffres, en commençant par le chiffre le moins significatif.
  2. Convertir les groupes en Mots : Pour chaque groupe de trois chiffres, utilisez la fonction triConvert pour le convertir en mots correspondants. Si les trois chiffres sont nuls, la fonction doit renvoyer "dontAddBigSuffix".
  3. Ajouter des suffixes : Itérer du plus grand au plus petit groupe de chiffres. Pour chaque groupe différent de zéro, ajoutez le suffixe approprié (par exemple, « mille », « million », « milliard ») et une virgule comme séparateur. Si un groupe est nul, remplacez-le par une chaîne vide.
  4. Format de sortie : Combinez les groupes convertis en une seule chaîne, séparés par une virgule. Affichez le résultat final.

Analyse du problème :

Le problème rencontré avec des nombres comme 190000009 survient lorsque la fonction ne parvient pas à gérer correctement les zéros de début et de fin. Dans ce cas, le dernier chiffre "9" est ignoré.

Solution :

Pour corriger ce problème, vous pouvez modifier la fonction triConvert pour gérer le cas limite où les trois chiffres sont zéro. Au lieu de renvoyer « dontAddBigSuffix », il doit renvoyer une chaîne vide. Cela garantira que les zéros non significatifs sont correctement ignorés.

Fonction triConvert mise à jour :

function triConvert(num) {
    var ones = new Array('', ' one', ' two', ' three', ' four', ' five', ' six', ' seven', ' eight', ' nine', ' ten', ' eleven', ' twelve', ' thirteen', ' fourteen', ' fifteen', ' sixteen', ' seventeen', ' eighteen', ' nineteen');
    var tens = new Array('', '', ' twenty', ' thirty', ' forty', ' fifty', ' sixty', ' seventy', ' eighty', ' ninety');
    var hundred = ' hundred';
    var output = '';
    var numString = num.toString();

    if (num == 0) {
        return ''; // Handle zero properly
    }
    // ... (rest of the original `triConvert` function)
}
Copier après la connexion

En implémentant ce changement, votre code devrait désormais gérer correctement les nombres avec n'importe quel nombre. de zéros de début ou de fin.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal