Maison > interface Web > js tutoriel > le corps du texte

Comment JavaScript peut-il remplir des chaînes à une longueur spécifique ?

Susan Sarandon
Libérer: 2024-11-23 14:30:15
original
615 Les gens l'ont consulté

How Can JavaScript Pad Strings to a Specific Length?

JavaScript peut-il remplir les chaînes à une longueur donnée ?

Le remplissage des chaînes à la longueur souhaitée est un besoin courant en programmation, en particulier lors du formatage des données pour l’affichage ou le stockage. JavaScript propose plusieurs options pour y parvenir avec différents degrés de complexité et de compatibilité sur différentes plates-formes JavaScript.

ES8/ES2017 String.padStart() Method

En 2017 , ECMAScript 2017 (ES8) a introduit les méthodes String.padStart() et String.padEnd() spécifiquement pour le remplissage des chaînes avec des espaces ou d'autres personnages. Ces méthodes sont prises en charge dans les navigateurs modernes et les versions Node.js.

<br>"Jonas".padStart(10); // La chaîne de pad par défaut est un espace<br>"42".padStart(6, "0"); // Complétez avec "0"<br>"<em>".padStart(8, "-/|"); // produit '-/|-/|</em>'<br>

Pour les anciennes versions de JavaScript, String.padStart() peut être implémenté à l'aide d'un polyfill.

Solutions pré-ES8

Avant ES8, plusieurs méthodes alternatives étaient utilisé pour rembourrer les cordes. Une approche courante consistait à concaténer la chaîne avec une chaîne de remplissage et à utiliser slice() pour extraire la partie souhaitée :

<br>var n = 123</p>
<p>String("00000 " n).slice(-5); // renvoie 00123<br>("00000" n).slice(-5); // renvoie 00123<br>(" " n).slice(-5); // renvoie " 123" (avec deux espaces)<br>

Une autre technique consistait à créer une extension de remplissage de chaîne :

<br>String. prototype.paddingLeft = function (paddingValue) {<br> return String(paddingValue this).slice(-paddingValue.length);<br>};<br>

Cette extension peut être utilisée comme suit :

<br>function getFormattedTime(date) {<br> var hours = date.getHours();<br> var minutes = date.getMinutes();</p>
<p>hours = hours.toString().paddingLeft("00");<br> minutes = minutes.toString().paddingLeft("00");</p>
<p>retourner "{0} :{1}".format(heures, minutes);<br>};</p>
<p>String.prototype.format = function () {</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">var args = arguments;
return this.replace(/{(\d+)}/g, function (match, number) {
    return typeof args[number] != 'undefined' ? args[number] : match;
});
Copier après la connexion

};

Ceci démontre le remplissage de chaînes à l'aide d'une méthode de prototype de chaîne modifiée.

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
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal