typescript/no-non-null-asserted-nullish-coalescing 제한
작동 방식
널리스 병합 연산자(??)의 왼쪽 피연산자에서 비null 확인(!)을 금지합니다.
왜 나쁜가요?
?? 널리스 병합 런타임 연산자는 null 또는 undefined를 다룰 때 기본 값을 제공할 수 있습니다. 널리스 병합 연산자의 왼쪽 피연산자에 ! 비null 확인 타입 연산자를 사용하는 것은 중복되며, 프로그래머의 실수 또는 두 연산자 간의 혼동을 시사할 가능성이 큽니다.
예시
이 규칙에 부적절한 코드 예시:
ts
foo! ?? bar;
foo.bazz! ?? bar;
foo!.bazz! ?? bar;
foo()! ?? bar;
let x!: string;
x! ?? "";
let x: string;
x = foo();
x! ?? "";이 규칙에 적절한 코드 예시:
ts
foo ?? bar;
foo ?? bar!;
foo!.bazz ?? bar;
foo!.bazz ?? bar!;
foo() ?? bar;ts
// 사용자가 이를 만족시킬 방법이 없기 때문에 이 코드는 적절하다고 간주됩니다.
let x: string;
x! ?? "";사용 방법
이 규칙을 구성 파일이나 명령줄 인터페이스에서 활성화하려면 다음을 사용하세요:
json
{
"rules": {
"typescript/no-non-null-asserted-nullish-coalescing": "error"
}
}bash
oxlint --deny typescript/no-non-null-asserted-nullish-coalescing