eslint/radix 厳格
何をするか
parseInt() を使用する際、数値の解析に使用する基数(基数)を指定する radix 引数を一貫して使用することを強制します。
なぜ問題か
radix を明示せずに parseInt() 関数を使用すると、予期しない結果が生じる可能性があります。
詳細については、MDN ドキュメント を参照してください。このドキュメントでは、parseInt() が特定の境界ケースをどのように処理するかについて解説されています。
設定
このルールにオプションを渡しても、動作に影響はありません。v1.49.0 で、このルールの設定オプションは削除され、無効化されました。これは ESLint v10 で行われた挙動の変更と一致しており、現在このルールは parseInt() に基数パラメータを提供することを常に強制しています。
この変更により新たな違反が検出された場合、以下のいずれかの対応を取ることができます:
- このルールを無効にする。
- コードベース内の
parseInt()のすべての使用箇所に基数パラメータを追加する。
例
このルールに違反するコードの例:
javascript
let num = parseInt("071"); // 57このルールに準拠するコードの例:
javascript
let num = parseInt("071", 10); // 71使用方法
構成ファイルまたは CLI でこのルールを有効化するには、以下のいずれかの方法を使用できます:
json
{
"rules": {
"radix": "error"
}
}bash
oxlint --deny radix