このように構造化された JavaScript 呼び出しがあります。
if (($(this).scrollTop() == 0) && !controlsVisibility) {
triggerControls();
}
else if (currentScroll > (previousScroll + 100) && controlsVisibility) {
triggerControls();
};
whiletriggerControls()
の場合に備えて型チェックを行い、デフォルトの arg としてundefined
使用controlsVisibility
して、正確に何をすべきかを決定します。おもう:
句
controlsVisibility
内で関数引数として渡さないという間違いを犯しましたか。if
その変数の値が、呼び出しtriggerControls()
と関数の実行の間で変化する場合 (マイクロ秒?) — 次のことを行う必要があります。グローバル状態を使用して可能な変更を考慮します(現在のように)
また
事前に安定した引数を渡して変更を妨害しますか?
ケースバイケースで判断されることは承知しておりますが、何かアドバイスをいただければ幸いです。
現在の実装(1)で問題ない場合
同じ関数を実行しているので
if
、使用するだけで、両方のシナリオ チェックを 1 つに記述できました。乱雑でコードをほとんど読め||
なくすることを除いて、なぜ私はそれをすべきではないのですか?