typescript/no-dynamic-delete 制限
何をするか
計算されたキー式に対して delete 演算子を使用することを禁止します。
なぜ問題なのか
動的に計算されたキーを削除することは危険であり、場合によっては最適化が不十分になる可能性があります。 実行時定数でないキーに対して delete 演算子を使用することは、適切なデータ構造を使っていない兆候である可能性があります。 キーバリューのコレクションとしてオブジェクトを使用している場合は、Map や Set を検討してください。
例
このルールに対する誤りの例:
ts
const container: { [i: string]: 0 } = {};
delete container["aa" + "b"];このルールに対する正しい例:
ts
const container: { [i: string]: 0 } = {};
delete container.aab;使い方
設定ファイルまたは CLI でこのルールを有効化するには、次のように使用できます:
json
{
"rules": {
"typescript/no-dynamic-delete": "error"
}
}bash
oxlint --deny typescript/no-dynamic-delete