unicorn/throw-new-error 스타일
작동 방식
이 규칙은 오류를 던질 때 항상 new를 사용하도록 보장합니다.
왜 문제가 될까?
자바스크립트에서는 new를 생략하는 것이 허용됩니다 (예: throw Error('메시지')). 하지만 이 경우 오류 객체가 올바르게 초기화되지 않습니다. 이로 인해 스택 트레이스가 누락되거나 잘못된 프로토타입 체인이 발생할 수 있습니다. new를 사용하면 의도가 명확해지고, 일관된 동작을 보장하며, 미묘한 버그를 피하는 데 도움이 됩니다.
예시
이 규칙에 부적절한 코드 예시:
javascript
throw Error("🦄");
throw TypeError("unicorn");
throw lib.TypeError("unicorn");이 규칙에 적절한 코드 예시:
javascript
throw new Error("🦄");
throw new TypeError("unicorn");
throw new lib.TypeError("unicorn");사용 방법
이 규칙을 구성 파일 또는 명령줄 인터페이스에서 활성화하려면 다음을 사용하세요:
json
{
"rules": {
"unicorn/throw-new-error": "error"
}
}bash
oxlint --deny unicorn/throw-new-error