자바스크립트에서 변수가 'undefined'(정의되지 않음) 상태인지 확인하는 가장 간단한 방법은 조건문(if)으로 해당 변수를 직접 평가하는 것입니다. 변수에 유효한 값이 할당되어 있으면 조건식은 참(True)으로 평가되고, 값이 없거나 정의되지 않은 경우에는 거짓(False)으로 평가됩니다.
즉, 평가 결과가 "False"라면 해당 변수는 정의되지 않았거나 사용할 수 있는 값이 없다는 의미입니다.
아래 예제에서는 변수 res에 숫자 10이 할당되어 있으므로 조건식이 참으로 평가되어 화면에 "True"가 출력됩니다.
예제
<html>
<body>
<script>
var res = 10;
if(res) {
document.write("True");
} else {
document.write("False");
}
</script>
</body>
</html>
참고: Falsy(거짓으로 평가되는) 값
조건문에서 거짓으로 평가되는 값은 undefined뿐만 아니라 0, 빈 문자열(""), null, NaN, false 등도 포함된다는 점에 유의해야 합니다. 따라서 변수가 정확히 undefined인지만 판별하려면 typeof res === "undefined"처럼 typeof 연산자를 사용하는 것이 더 안전하고 명확한 방법입니다.