Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

자바스크립트에서 변수가 존재하는지 확인하는 방법

자바스크립트에서 특정 변수가 존재하는지 확인하려면 undefinednull을 함께 비교하는 것이 가장 안전한 방법입니다. 아래 예제에서는 myVar라는 변수의 존재 여부를 확인하고 있습니다.

변수 존재 여부 확인 예제

<html>
   <body>
      <script>
         var myVar = 20;
         if(myVar !== undefined && myVar !== null) {
            document.write("Variable exists");
         }
      </script>
   </body>
</html>

코드 설명

위 코드에서는 !==(엄격한 불일치 연산자)를 사용하여 두 가지 조건을 동시에 검사합니다.

  • myVar !== undefined: 변수가 선언되고 값이 할당되었는지 확인합니다.
  • myVar !== null: 변수에 의도적으로 null이 할당된 경우를 제외합니다.

두 조건이 모두 참이라면 해당 변수는 실제로 유효한 값을 가지고 있는 것이므로, "Variable exists"라는 문구가 화면에 출력됩니다.

typeof 연산자를 활용한 대안 방법

선언되지 않은 변수에 접근할 때 발생할 수 있는 ReferenceError를 피하고 싶다면, typeof 연산자를 사용하는 것도 좋은 방법입니다.

if (typeof myVar !== 'undefined' && myVar !== null) {
   console.log("변수가 존재합니다.");
}

typeof는 선언되지 않은 변수에 대해서도 에러 없이 'undefined' 문자열을 반환하기 때문에, 더 안전하게 변수의 존재 여부를 판단할 수 있습니다.

주의 사항

  • == 대신 반드시 === 또는 !== 같은 엄격한 비교 연산자를 사용해야 타입 변환으로 인한 예기치 않은 결과를 방지할 수 있습니다.
  • undefinednull은 느슨한 비교(==) 시 서로 같다고 판단되므로, 두 경우를 구분해야 한다면 엄격한 비교가 필수입니다.