Heim >Web-Frontend >js-Tutorial >Wie kann ich eine Zahl in JavaScript mit führenden Nullen auffüllen?

Wie kann ich eine Zahl in JavaScript mit führenden Nullen auffüllen?

DDD
DDDOriginal
2024-12-06 11:38:12407Durchsuche

How Can I Pad a Number with Leading Zeros in JavaScript?

Auffüllen einer Zahl mit führenden Nullen in JavaScript

Beim Umgang mit JavaScript besteht häufig die Notwendigkeit, eine Zahl mit führenden Nullen aufzufüllen. Beispielsweise wird die Zahl 9 zu „0009“ und 10 zu „0010“, wobei immer ein vierstelliges Format eingehalten wird.

Plain-Jane-Methode

Ein einfacher Ansatz besteht darin, die Zahl zu subtrahieren von 4, um die erforderliche Anzahl von Nullen zu bestimmen. Obwohl es funktional ist, mangelt es ihm an Flair.

ES2017s padStart()-Methode

In ES2017 bietet die String.prototype.padStart()-Methode eine elegantere Lösung. Es hängt das angegebene Zeichen (standardmäßig ein Leerzeichen) links von der Zeichenfolge an, bis die gewünschte Länge erreicht ist.

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

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

Generische Auffüllfunktion

In Szenarien, in denen padStart() möglicherweise Da dies keine Option ist, kann eine generische Auffüllfunktion verwendet werden:

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

Diese Funktion nutzt die Fähigkeit eines Arrays, eine Zahl als Argument zu akzeptieren und eine zu erstellen Array mit dieser Länge, gefüllt mit undefinierten Elementen. Wenn diese Elemente mit einer Null (oder einem anderen angegebenen Zeichen) verbunden werden, wird eine Zeichenfolge mit der entsprechenden Anzahl führender Nullen generiert.

Beispielverwendung

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

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

Das obige ist der detaillierte Inhalt vonWie kann ich eine Zahl in JavaScript mit führenden Nullen auffüllen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn