bauer's diary

凡人の凡人による凡人のための備忘録

array.forEach()を間違って使っているケース

array.forEach()を間違って使っているケースが結構見受けられたので、

注意が必要。

 

  ☆array.forEach()を使ったケース---------------

>||

    function(array) {

     array.forEach(function(element) {

        if (バリデート) {

          // リターンせず、次の要素を処理する

          return;

        }

      });

 

      // データ保存処理が実行されてしまう

      データ保存処理

    }

||<

  ----------------------------------------------

 

また、array.every()では、return false;すると、

通常のfor文でいうbreak;と同じ動きになるが、これでも関数は抜けない。

 

  ☆array.every()を使ったケース-----------------

    function(array) {

     array.every(function(element) {

        if (バリデート) {

          // 関数からリターンするわけではない

          return false;

        }

      });

 

      // データ保存処理が実行されてしまう

      データ保存処理

    }

  ----------------------------------------------