Maison >interface Web >js tutoriel >Comment remplir un nombre avec des zéros non significatifs en JavaScript ?

Comment remplir un nombre avec des zéros non significatifs en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-06 15:28:16643parcourir

How to Pad a Number with Leading Zeros in JavaScript?

Comment remplir un nombre avec des zéros non significatifs en JavaScript

JavaScript ne dispose pas d'une fonction intégrée pour remplir les nombres avec des zéros non significatifs. Cependant, vous pouvez obtenir ce remplissage en utilisant diverses méthodes.

Solution 1 : Utilisation de String.prototype.padStart()

Pour ES2017 et versions ultérieures, vous pouvez exploiter la chaîne Méthode .prototype.padStart() :

String(n).padStart(4, '0');

Cela remplira le nombre n avec des zéros jusqu'à ce qu'il atteigne une longueur totale de 4. Par exemple :

n = 9;
String(n).padStart(4, '0'); // '0009'

n = 10;
String(n).padStart(4, '0'); // '0010'

Solution 2 : Utiliser Array.prototype.join()

Pour les navigateurs antérieurs à ES2017, vous pouvez utiliser une combinaison de Array .prototype.join() et concaténation de chaînes :

function pad(n, width, z) {
  z = z || '0';
  n = n + '';
  return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
}

Cette fonction vérifie d'abord si le nombre la longueur de la chaîne est déjà supérieure ou égale à la largeur souhaitée. Sinon, il initialise un tableau d'une longueur égale à la largeur moins la longueur actuelle du nombre plus 1 et le joint avec le caractère zéro. Cela crée effectivement une chaîne de zéros de la longueur appropriée, qui est ensuite concaténée avec le nombre.

Exemple d'utilisation :

pad(10, 4);      // 0010
pad(9, 4);       // 0009
pad(123, 4);     // 0123

pad(10, 4, '-'); // --10

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