Skip to content
← Back to rules

unicorn/catch-error-name スタイル

🛠️ An auto-fix is available for this rule.

何をするか

このルールは、catch 文におけるエラー変数の名前付けを一貫性と説明性があるものに強制し、エラーが使用されている場合に曖昧な名前(例:badName_)を使用することを防ぎます。

なぜ悪いのか

badName_ のような説明のない名前を使用すると、コードの読解やデバッグ時にわかりにくくなり、理解が困難になります。エラーを表す変数には、明確かつ一貫した名前を使用することが重要です。

このルールに違反する誤ったコードの例:

javascript
try {
} catch (badName) {}

// `_` は使用されている場合は許可されません
try {
} catch (_) {
  console.log(_);
}

promise.catch((badName) => {});

promise.then(undefined, (badName) => {});

このルールに従う正しいコードの例:

javascript
try {
} catch (error) {}

// `_` は使用されていない場合は許可されます
try {
} catch (_) {
  console.log(123);
}

promise.catch((error) => {});

promise.then(undefined, (error) => {});

設定

このルールは、以下のプロパティを持つ設定オブジェクトを受け取ります。

忽視

type: string[]

catch 変数名のチェック時に無視するパターンのリストです。パターンは文字列または正規表現で指定できます。

名前

type: string

default: "error"

catch ブロックにおけるエラー変数に使用する名前です。'error' 以外の名前(例:'exception')にカスタマイズできます。

使い方

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

json
{
  "rules": {
    "unicorn/catch-error-name": "error"
  }
}
bash
oxlint --deny unicorn/catch-error-name

参照