Skip to content
← Back to rules

eslint/no-with 정확성

This rule is turned on by default.

작동 방식

with 문을 사용하지 않도록 제한합니다.

왜 문제가 되는가?

with 문은 객체의 멤버를 현재 스코프에 추가하기 때문에, 블록 내부의 변수가 실제로 어떤 것을 참조하는지 알 수 없게 되어 잠재적으로 문제가 될 수 있습니다.

일반적으로 나쁜 관습으로 여겨지며, 엄격 모드에서는 금지되어 있습니다.

alwaysStrict 옵션이 활성화된 타입스크립트 코드에서는 이 규칙이 필요하지 않습니다.

예시

이 규칙에 위배되는 잘못된 코드 예시:

javascript
with (point) {
  r = Math.sqrt(x * x + y * y); // r은 point의 멤버인가요?
}

사용 방법

구성 파일이나 커맨드 라인 인터페이스에서 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:

json
{
  "rules": {
    "no-with": "error"
  }
}
bash
oxlint --deny no-with

참고자료