eslint/no-unneeded-ternary 의심스러움
작동 방식
더 간단한 대안이 존재할 때, 삼항 연산자를 사용하지 않도록 차단합니다.
왜 나쁜가요?
자바스크립트에서 조건부 표현식을 두 개의 부울 값 사이에서 선택하는 데 사용하는 것은 흔한 실수입니다. 이를 보다 적절하게 처리하려면 테스트를 부울로 변환하기 위해 !를 사용해야 합니다.
또 다른 흔한 실수는 단일 변수를 조건 테스트와 결과 모두에 사용하는 것입니다. 이러한 경우, 논리적 또는 연산자(||)를 사용하여 동일한 기능을 제공할 수 있습니다.
예시
이 규칙에 부적절한 코드 예시:
js
const isYes = answer === 1 ? true : false;
const isNo = answer === 1 ? false : true;
foo(bar ? bar : 1);이 규칙에 적절한 코드 예시:
js
const isYes = answer === 1;
const isNo = answer !== 1;
foo(bar || 1);구성 방법
이 규칙은 다음 속성을 가진 구성 객체를 받습니다.
defaultAssignment
type: boolean
기본값: true
기본 할당 패턴 x ? x : y를 허용할지 여부.
false로 설정하면 x ? x : y 같은 경우도 경고하고, 대신 논리합(||) 형식인 x || y를 사용하도록 제안합니다. true로 설정된 경우(기본값), 이러한 기본 할당은 허용되며 보고되지 않습니다.
사용 방법
이 규칙을 구성 파일이나 명령줄 인터페이스에서 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"no-unneeded-ternary": "error"
}
}bash
oxlint --deny no-unneeded-ternary