Skip to content
← Back to rules

unicorn/prefer-number-properties 制約

⚠️🛠️ A dangerous auto-fix is available for this rule.

何をするか

グローバル変数として parseInt()parseFloat()isNan()isFinite()NanInfinity-Infinity の使用を禁止します。

なぜ問題なのか

ECMAScript 2015 では、一貫性を保ち、わずかに改善するために、グローバル関数を Number コンストラクタに移動しました。このルールは、グローバル変数の使用を抑えるために、以下の使用を強制します:

このルールに対する誤りなコードの例:

javascript
const foo = parseInt("10", 2);
const bar = parseFloat("10.5");

このルールに対する正しいコードの例:

javascript
const foo = Number.parseInt("10", 2);
const bar = Number.parseFloat("10.5");

設定

このルールは以下のプロパティを持つ設定オブジェクトを受け入れます:

checkInfinity

type: boolean

default: false

true に設定された場合、グローバル変数として Infinity および -Infinity が使用されているかチェックします。

checkNaN

type: boolean

default: true

true に設定された場合、グローバル変数として NaN が使用されているかチェックします。

使用方法

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

json
{
  "rules": {
    "unicorn/prefer-number-properties": "error"
  }
}
bash
oxlint --deny unicorn/prefer-number-properties

参照