1. ホーム
  2. javascript

[解決済み] catch forEach 最後のイテレーション

2022-09-19 21:11:50

質問

arr = [1,2,3];
arr.forEach(function(i){
// last iteration
});

ループの終了をキャッチする方法は?私は if(i == 3) とすることもできますが、配列の番号が何なのかがわからない場合があります。

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

ES6+用に更新された回答は ここで .


arr = [1, 2, 3]; 

arr.forEach(function(i, idx, array){
   if (idx === array.length - 1){ 
       console.log("Last callback call at index " + idx + " with value " + i ); 
   }
});

とすると出力されます。

Last callback call at index 2 with value 3

この動作は、テスト arr.length に渡された配列の現在のインデックスに対してテストしています。 コールバック関数 .