1. ホーム
  2. javascript

[解決済み] をN回行う(宣言的構文)

2022-08-22 22:44:30

質問

Javascriptでこのようなことを簡単に書く方法はないでしょうか?

[1,2,3].times do {
  something();
}

似たような構文をサポートしているライブラリはないでしょうか?

更新しました。 を明確にするために、私は something() が配列要素の反復ごとにそれぞれ1,2,3回呼ばれるようにしたいのです。

どのように解決するのですか?

この回答は Array.forEach に基づいて、任意のライブラリなしで、単にネイティブ バニラ .

基本的に something() を3回、使います。

[1,2,3].forEach(function(i) {
  something();
});

を考えてみると、以下のような関数があります。

function something(){ console.log('something') }

と出力されます。

something
something
something


この質問を完成させるために、次のような呼び方をします。 something() をそれぞれ1回、2回、3回呼び出す方法です。

2017年です、ES6を使用しても構いません。

[1,2,3].forEach(i => Array(i).fill(i).forEach(_ => {
  something()
}))

または古き良きES5で

[1,2,3].forEach(function(i) {
  Array(i).fill(i).forEach(function() {
    something()
  })
}))

どちらの場合も、出力は

と出力されます。

something

something
something

something
something
something

(1回→2回→3回)