Wer argumentiert, dass die Programmplanung ist eine Kunst, und letztlich kann ich nur zustimmen, wenn vor allem scovano sehr verschiedene Lösungen für dasselbe Problem. Um zu verstehen, wie das wahr ist, so muss in der gleichen Sprache medisimo (JavaScript) gelöst werden können, völlig unterschiedliche Ansätze und Original.
Halle links Null
Eine Zahl, aber die Rede ist, gilt auch für jede Saite, wie 123 sein kann auf der linken Seite - zum Ausgleich - mit einer Reihe von Nullen, z. B.: 00123 Diese Notwendigkeit ist bei verschiedenen Gelegenheiten und ist nützlich für an - oder zeigen - eine Reihe sauber, implizit, die ihre maximalen Wert. In dem Video, zum Beispiel die klassischen Ergebnis (das Ergebnis) wird oft mit 001234 dass bei den meisten wird es dazu führen, dass 999999 Hier ist, wie das Problem gelöst wurde von verschiedenen Entwicklern:
JavaScript: / **
* Linke String Pad
*
* @ Von http://snipplr.com/view/8423/left-pad-string/
* @ Author Web-http: / / www.mechanicmatt.com/
*
* @ Param num - Striga zu füllen
* @ Param totalChars - Anzahl der Zeichen, einschließlich der "Null"
* @ Param padWidth - Zeichen zu füllen, standardmäßig "0"
* /
num, totalChars, padWith ) { leadingZeros Funktion (num, totalChars, padWith) (
num = num + "";
? padWith = (padWith)? padWith: "0";
num. length <totalChars ) { if (Nr. Länge <totalChars) (
num. length <totalChars ) { while (Nr. Länge <totalChars) (
padWith + num = num;
)
{ } Else ())
num. length > totalChars ) { //if padWith was a multiple character string and num was overpadded if (Nr. Länge> totalChars) (/ / if padWith war ein Vielfaches Zeichenkette und num wurde overpadded
num. length - totalChars ) , totalChars ) ; num = num. substring ((Nr. Länge - totalChars), totalChars);
{ } Else ())
return num;
)
leadingZeros ( "asdf" , 10 , "0" ) ) ; alert (leadingZeros ( "asdf", 10 "0"));
Diese Lösung ist äußerst artikulieren, aber Sie können eine beliebige Zahl von 0 bis Anzahl num der Wahl der Art der Zeichen, die von padWidth statt der 0
Definitiv Original, aber diese Lösung:
JavaScript: / **
* String_pad
*
* @ Von http://snipplr.com/view/700/stringpad/
* @ Author http://d.hatena.ne.jp/brazil/20060721/1153489937
*
* @ Param str - Striga zu füllen
* @ Param len - Anzahl der Zeichen, einschließlich der "Null"
* @ Param ch - Zeichen verwendet werden, um
* /
str, len, ch ) { return new Array ( len- ( '' +str ) . length + 1 ) . join ( ch ) + str } Pad-Funktion (str, len, CH) (return new Array (len-(''+ str). Länge + 1). join (CH) + str)
pad ( 56 , 4 , '0' ) ) ; // 0056 alert (pad (56, 4,'0 ')); / / 0056
Gleichen Ergebnis, mit einer völlig anderen Ansatz. Auch hier haben wir die Möglichkeit zu entscheiden, die Anzahl der Zeichen durch die Polsterung Parameter len und die Schrift, die ch Nicht, den Standard zu verwenden, die in der vorherigen Funktion.
Was ich stattdessen ...:
JavaScript: / **
* String_pad
*
* @ Author Giovambattista Fazioli
* @ Web http://www.undolog.com
*
* @ Param s - Striga zu füllen
* @ Param l - Ein String, der den Charakter ist, dass die Länge
* ZB "0000"-Zeichen = "0" Länge 4
* /
s,l ) { return ( l. substr ( 0 , ( l. length -s. length ) ) +s ) ; } padding-Funktion (s, l) (return (l. substr (0, (l-s Länge. Länge)) + s);)
padding ( '123' , '0000' ) ) ; alert (padding ('123 ','0000'));
Wenn Sie andere interessante Lösungen, zögern Sie nicht zu kommentieren 
Verwandte Post