본문 바로가기
카테고리 없음

ESLint 규칙 중 no-shadow란?

by 좌충우돌 프레드 2023. 4. 19.
반응형

ESLint 규칙 중 no-shadow란?

소개

ESLint는 자바스크립트 코드에서 에러나 버그를 찾고, 코드 스타일을 유지하는 역할을 합니다. 이러한 역할을 수행하기 위해 ESLint는 여러 가지 규칙을 가지고 있는데, 그 중 하나가 no-shadow입니다. 이 규칙은 변수와 함수 이름이 외부 범위와 중복되지 않도록 해주는 역할을 합니다.

no-shadow 규칙

no-shadow 규칙은 변수나 함수 이름이 외부 범위와 중복되는 것을 방지합니다. 이 규칙을 적용하면, 변수나 함수를 선언할 때, 이미 같은 이름이 사용되었다면 ESLint가 경고를 띄웁니다. 이를 통해 같은 이름으로 선언된 변수나 함수가 있을 경우, 혼란을 방지할 수 있습니다.

예를 들어, 다음과 같은 코드가 있다고 가정해 봅시다.

function foo() {
  let a = 1;
  if (true) {
    let a = 2;
    console.log(a);
  }
  console.log(a);
}

위 코드는 no-shadow 규칙을 위반합니다. 왜냐하면 if문 내부에서 선언한 변수 a는 이미 외부 범위에서 선언된 변수 a와 이름이 같기 때문입니다. 이러한 코드는 가독성을 떨어뜨리고, 에러를 발생시킬 가능성이 높습니다.

no-shadow 규칙 적용 방법

no-shadow 규칙을 적용하는 방법은 매우 간단합니다. .eslintrc 파일에서 rules 항목에 no-shadow:true를 추가하면 됩니다. 이렇게 하면 변수와 함수 이름이 외부 범위와 중복될 경우 ESLint가 경고를 띄워주게 됩니다.

결론

ESLint의 no-shadow 규칙은 변수와 함수 이름이 외부 범위와 중복되지 않도록 해주는 역할을 합니다. 이를 통해 코드의 가독성을 높이고, 에러를 방지할 수 있습니다. no-shadow 규칙은 매우 간단하게 적용할 수 있으니, 코드 작성 시에 꼭 적용해 보시기 바랍니다.

반응형

댓글