2017-11-29 5 views
0

のように、私たちのコーディング習慣に影響を与える大きな波のような機能プログラミング、forEachのように。の代わりに、配列foreachはJavaScriptの

Forにもかかわらず、javascriptはかなり便利で便利です。私はので、私はlet index = 0...のために代わり、アレイを設定functionalのようなループ全体の外観をしたい:

純粋javscript

for(let index = 0;index < 10;index++){ 
    //count 10 times. 
} 

機能ソリューション

Array(10).forEach((value,index,arr)=>{ 
    //count 10 times. 
}) 

配列が空と判断した場合自己の項目は、私はこの問題を解決するためにfillを使用します。fillfunctionalとなりました。

Arrayまたはその代わりにforでアイテムを作成する方法はありますか。あなたが本当に機能的に書きたい場合は

+0

ソリューションコード: 'Array(10).fill()。forEach(()=> {})' –

+0

達成しようとしていることは何ですか? –

+0

'for'を達成するために' foreach'を使いたいのですが、 '10'を設定したように10回実行します。 –

答えて

0

することは、あなたはそれを自分で実装する必要があります

function range(n){ 
    if(n <= 0) return []; 
    else  return range(n-1).concat([n]); 
} 

range(10).forEach(n => /* do stuff */); 

あなたのコードは本当に機能している場合は、する必要があってはならない、ということを覚えておいてくださいforEachループは副作用のみを引き起こすため、関数型プログラミングではそれを望まないためです。

+0

これは 'Array(10).fill(0)'または 'Array.from()'を使って行われませんか? –

+0

ハッサム、ループを開始する前に*配列*に値を割り当てて初期化する必要がある理由を説明してください – naomik

関連する問題