oxc/const-comparisons 정확성
작동 방식
상수와의 중복 또는 논리적으로 불가능한 비교를 검사합니다. 다음을 포함합니다:
- 상수와의 무의미한 이중 비교.
- 상수를 포함하는 불가능한 비교.
- 두 피연산자가 동일한 경우(예: a < a)의 중복 비교.
왜 문제가 되는가?
이러한 비교는 프로그램 내에서 혼란스럽거나 잘못된 로직을 유발할 수 있습니다. 많은 경우:
- 비교 중 하나만 결과에 영향을 미치며, 이는 프로그래머가 비교 연산자 하나를 잘못 뒤집었거나 잘못된 변수를 사용했을 가능성을 시사합니다.
- 예를 들어, a < a 또는 a >= a와 같은 비교는 항상 거짓 또는 참이므로, 로직이 중복되며 오해의 소지가 있습니다.
예시
이 규칙에 대해 잘못된 코드 예시:
javascript
status_code <= 400 && status_code > 500;
status_code < 200 && status_code <= 299;
status_code > 500 && status_code >= 500;
a < a; // 항상 거짓
a >= a; // 항상 참이 규칙에 대해 올바른 코드 예시:
javascript
status_code >= 400 && status_code < 500;
500 <= status_code && 600 > status_code;
500 <= status_code && status_code <= 600;
a < b;
a <= b;사용 방법
구성 파일이나 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음과 같이 사용할 수 있습니다:
json
{
"rules": {
"oxc/const-comparisons": "error"
}
}bash
oxlint --deny oxc/const-comparisons