Maison > interface Web > js tutoriel > Comment puis-je remplir des chaînes à la longueur souhaitée en JavaScript ?

Comment puis-je remplir des chaînes à la longueur souhaitée en JavaScript ?

Susan Sarandon
Libérer: 2024-11-30 08:01:14
original
878 Les gens l'ont consulté

How Can I Pad Strings to a Desired Length in JavaScript?

Remplissage d'une chaîne en JavaScript

Introduction

JavaScript fournit diverses méthodes pour réaliser des tâches spécifiques de manipulation de chaînes. L'une de ces tâches consiste à remplir une chaîne à la longueur souhaitée, en remplissant les espaces vides avec des caractères. Cet article traite des différentes manières de remplir une chaîne en JavaScript.

Solution utilisant String.padStart

ECMAScript 2017 (ES8) a introduit la méthode String.padStart à cet effet. Il prend deux paramètres : la longueur souhaitée et une chaîne de remplissage facultative (qui est par défaut un espace).

"Jonas".padStart(10); // Default pad string is a space
"42".padStart(6, "0"); // Pad with "0"
"*".padStart(8, "-/|\"); // produces '-/|\-/|*'
Copier après la connexion

Polyfill pour String.padStart

Si String.padStart n'est pas pris en charge dans votre Environnement JavaScript, vous pouvez l'ajouter en tant que polyfill :

if (!String.prototype.padStart) {
  String.prototype.padStart = function(length, padString) {
    padString = padString || " ";
    if (this.length >= length) return this;
    else return padString.repeat(length - this.length) + this;
  };
}
Copier après la connexion

Utilisation de la concaténation de chaînes

Un simple La façon de remplir une chaîne est de la concaténer avec les caractères de remplissage souhaités.

var n = 123

String("00000" + n).slice(-5); // returns 00123
("00000" + n).slice(-5); // returns 00123
("     " + n).slice(-5); // returns "  123" (with two spaces)
Copier après la connexion

Extension de l'objet String

Vous pouvez également étendre l'objet String pour inclure une méthode paddingLeft pour votre commodité.

String.prototype.paddingLeft = function (paddingValue) {
   return String(paddingValue + this).slice(-paddingValue.length);
};
Copier après la connexion

Exemple d'utilisation

function getFormattedTime(date) {
  var hours = date.getHours();
  var minutes = date.getMinutes();

  hours = hours.toString().paddingLeft("00");
  minutes = minutes.toString().paddingLeft("00");

  return "{0}:{1}".format(hours, minutes);
};

String.prototype.format = function () {
    var args = arguments;
    return this.replace(/{(\d+)}/g, function (match, number) {
        return typeof args[number] != 'undefined' ? args[number] : match;
    });
};
Copier après la connexion

Ce code renverra une heure au format "15h30".

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