【JavaScript】指定した回数分だけループ処理をする方法とは

Spread Operatorを使う(推奨)

Spread Operatorを使うには以下の構造でコードを記述すれば、指定した回数分だけ処理を実行できます。

個人的には、for文を使うよりコードがスッキリして分かりやすいのでオススメです。

[...Array( ループ回数 )].map(() => 処理内容 )

例えば、”Hello World!”という文字列を5回出力したい場合は、以下のように書けばOKです。

[...Array(5)].map(() => console.log('Hello World!'))

//  Hello World!
//  Hello World!
//  Hello World!
//  Hello World!
//  Hello World!

ループ処理の結果を変数に代入したい時は、mapの中でreturnを記述して値を返します。

const Numbers = [...Array(5)].map(() => {
   return 10
})

console.log(Numbers)  //  [10, 10, 10, 10, 10]

for文を使う

お馴染みのfor文を使ってでも実装することができます。

for(let i = 0; i < 5 ; i++) {
  console.log('Hello World!')
}

//  Hello World!
//  Hello World!
//  Hello World!
//  Hello World!
//  Hello World!

指定回数分のループ処理をした結果として、新しく配列を作ることも可能ですが、for文の前に空の配列を変数に入れて初期化しなければいけません。

let Numbers = []  // 初期化
for(let i = 0; i < 5 ; i++) {
  Numbers.push(10)
}

console.log(Numbers)  //  [10, 10, 10, 10, 10]

for文を使ってでも実装できますが、個人的には[…Array(n)]の構文を使用した方がコードの見通しが良くなると思います。

タイトルとURLをコピーしました