ループのためのJavaScriptのループのJavaScript古い学校のループ


一般的に、私たちが要素のリストを持っていて、このリストから各要素を取得したい場合、あるいは、配列の要素を反復したいなら、古いスタイルを使いますfor ループ.

ループ用


例として、我々はここに配列を持っているnumbers それは数字のリストを含んでいます.
const numbers = [45, 78, 95, 36, 47];
を使用して、この配列から各番号を取得するにはfor ループ、最初にカウンタを初期化しました0 , 各反復の前に評価される条件、および各反復の後に評価される式は、この場合、カウンタが1つずつ増加し、条件が真である限り
for (let i = 0; i < numbers.length; i += 1) {
 console.log(numbers[i]);
}
の結果console.log リストから要素を表示するnumbers 特定でindex カウンタの使用

foreach


さて、同じ例では、JavaScript ES 5を使用できます.forEach ループで、配列内の各要素の関数を実行します.
numbers.forEach(number => {
 console.log(number);
});

ちょうどそれに気づくforEach は配列、マップ、集合だけに使用され、forEachfor ループは、しかし、それを使用するいくつかの欠陥があります.
最初の問題は、方法がないことですbreak または現在のループを停止すると、この現在のプレゼンテーションは正しくありません.
numbers.forEach(number => {
 if (number == 45) {
   console.log("terminate the current loop");
   break;
 }
 console.log(number);
});

第2の問題は:あなたはreturn ループ内の囲まれた関数からのステートメントです.これは、ループが停止しなければならない例ですreturn false 条件がtrue , しかし、その代わりにそれはconsole.log(number) .
numbers.forEach(number => {
 if (number == 45) {
   console.log("terminate the current loop");
   return false;
 }
 console.log(number);
});