Skip to content
← Back to rules

typescript/no-confusing-non-null-assertion Suspicious

🚧 An auto-fix is planned for this rule, but not implemented at this time.

何を行うか

代入や等価チェック(= や == や ===)の直隣に非ヌル宣言 (!) を使用することを禁止します。これは、読み取りにくくなる可能性があるためです。

なぜ問題か

非ヌル宣言 (!) を代入や等価チェック(= または == または ===)の隣に配置すると、!=!== などの「不等価チェック」と似た見た目になり、コードの意味が混乱する可能性があります。

このルールに違反する誤りの例

ts
a! == b; // 非ヌル宣言(`!`) と等価テスト(`==`)
a !== b; // 不等価テスト(`!==`)
a! === b; // 非ヌル宣言(`!`) と三重等価テスト(`===`)

このルールに従う正しい例

ts
a == b;
a !== b;
a === b;

使い方

設定ファイルまたは CLI 経由でこのルールを有効化するには、以下のいずれかを使用してください:

json
{
  "rules": {
    "typescript/no-confusing-non-null-assertion": "error"
  }
}
bash
oxlint --deny typescript/no-confusing-non-null-assertion

参照