eslint/no-ex-assign 正しさ
何をするか
catch 節で例外の再代入を禁止します
なぜ問題なのか
try 文内の catch 節で、例外パラメータに別の値を代入してしまうと(意図的であれ偶然であれ)、それ以降、そのエラーにアクセスできなくなってしまいます。arguments オブジェクトが存在しないため、このデータに代替的なアクセス手段がありません。そのため、パラメータへの代入は完全に破壊的です。
例
このルールに関して誤りなコードの例:
javascript
try {
// コード
} catch (e) {
e = 10;
}このルールに関して正しいコードの例:
javascript
try {
// コード
} catch (e) {
let val = 10;
}使い方
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"rules": {
"no-ex-assign": "error"
}
}bash
oxlint --deny no-ex-assign