ループで随時変化していく値の中で、閾値を越えたら一度だけ処理したい
下記のように変化していく値で、0を越えた時点で一度だけ処理するにはどうすれば良いでしょうか?
Math.sin(Math.PI + t)
・t += 0.02;
-0.021590975726093416
-0.021590975726093416
-0.021590975726093416
-0.021590975726093416
-0.021590975726093416
-0.0015926529164847303
-0.0015926529164847303
-0.0015926529164847303
-0.0015926529164847303
-0.0015926529164847303
0.018406306933055464
0.018406306933055464
0.018406306933055464
0.018406306933055464
0.018406306933055464
0.03839790450523747
0.03839790450523747
0.03839790450523747
0.03839790450523747
0.03839790450523747
現状コードのイメージ
target = Math.sin(Math.PI + t);
flg = true;
if((flg==true)&&( target < 0)){
console.log(target);
flg=false;
}else if((flg==false)&&(target > 0)){
flg=true;
}
t += 0.02;
最終的にやりたいこと
・(0を越える度毎に、)0を越えた時点の値を1度だけ表示したい
・現状では、「if((flg==true)&&( target < 0)){」を満たす内容を全て出力してしまう
※ループ値は、マイナスからプラスへ変化したり、プラスからマイナスへ変化したりする予定