LoginSignup
0
1

More than 5 years have passed since last update.

指定した文字を繰り返す。また数値のゼロ埋めを行う

Last updated at Posted at 2017-03-29

指定した文字を繰り返す

短いのでとりあえずサンプルコードを見たら一目瞭然かもしれません。

1.指定した文字を繰り返す
var _len = 3; //繰り返し文字の回数(※文字列長ではなく繰り返し数であることに注意)
var _str = "FizzBuzz_"; //繰り返す文字列

console.log( Array(_len+1).join(_str) ); // 出力:FizzBuzz_FizzBuzz_FizzBuzz_

解説

1-1.指定長の配列を作る
Array(_len+1)

指定長の配列を作ります。値はすべてundefinedになります。
なぜ+1しているかというと……

1-2.連結した文字列を返す
join(_str)

で文字列連結によって文字の繰り返しを行っているので、繰り返したい回数+1の配列が必要というすんぽう。
undefinedはjoinを行った時に空文字列になるので結合文字列だけが残ります。

数値のゼロ埋めをする

結果は数値ではなく文字列です。

2.数値のゼロ埋めをする
var _len = 6; //0埋めする桁数
var _val = 123; //0埋めしたい数値

console.log( (Array(_len+1).join("0")+_val).slice(-_len) ); // 出力:000123

解説

2-1.数値の先頭に"0"をくっつけて文字列化
Array(_len+1).join("0")+_val

まず指定文字の繰り返しで連続した"0"の文字列を作って数値と結合します。
この時点で文字列になります。

2-2.文字列の切り出し
slice(-_len)

負の数を指定すると末尾からの切り出しになるので、余分な "0" は切り取られます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1