Skip to content
← Back to rules

oxc/bad-min-max-func 正しさ

This rule is turned on by default.

何を行うか

Math.min(Math.max(x, y), z) のクランプ関数が、引数の順序が間違っているために常に定数結果に評価されるかどうかをチェックします。

なぜ悪いのか

Math.min(Math.max(x, y), z) 関数は、ある値を他の2つの値の間に制限(クランプ)するために使用されます。引数の順序が間違っている場合、この関数は常に定数結果に評価されてしまいます。

このルールに対して不適切なコードの例:

javascript
Math.min(Math.max(100, x), 0);
Math.max(1000, Math.min(0, z));

このルールに対して適切なコードの例:

javascript
Math.max(0, Math.min(100, x));
Math.min(1000, Math.max(0, z));

使い方

設定ファイルまたは CLI でこのルールを有効化するには、以下のように使用できます:

json
{
  "rules": {
    "oxc/bad-min-max-func": "error"
  }
}
bash
oxlint --deny oxc/bad-min-max-func

参照