undefined란 무엇인가?
개요
undefined
는 자바스크립트에서 변수가 선언되었지만 아직 값이 할당되지 않았음을 나타내는 키워드입니다. 자바스크립트는 동적 타입 언어이므로 변수에 어떤 값이든 할당할 수 있으며, 값이 할당되면 변수의 타입도 해당 값의 타입으로 변경됩니다.
undefined와 null의 차이
undefined
와 null
은 종종 혼동되지만, 두 가지는 서로 다른 것입니다.
- undefined: 변수가 선언되었지만 값이 할당되지 않은 경우
- null: 변수에 명시적으로
null
값이 할당된 경우
다음 코드를 예로 들어 보겠습니다.
let x; // 변수 x를 선언하지만 값을 할당하지 않음
console.log(x); // undefined 출력
이 예에서 x
변수는 선언되었지만 값이 할당되지 않았습니다. 따라서 콘솔에 undefined
가 출력됩니다.
반면에 다음 코드에서는 y
변수에 명시적으로 null
값이 할당됩니다.
let y = null;
console.log(y); // null 출력
이 예에서는 y
변수에 null
값이 할당되므로 콘솔에 null
이 출력됩니다.
undefined 확인
변수가 undefined
인지 확인하려면 typeof
연산자를 사용할 수 있습니다. typeof
연산자는 변수의 타입을 반환합니다. undefined
변수의 경우 “undefined” 문자열이 반환됩니다.
let x;
console.log(typeof x); // "undefined" 출력
undefined 처리
변수가 undefined
인 경우 프로그램에서 에러가 발생하지 않도록 처리하는 것이 중요합니다. 일반적으로 조건문이나 삼항 연산자를 사용하여 undefined
변수를 처리합니다.
예를 들어, 다음 코드에서는 x
변수가 undefined
인 경우 “undefined입니다”라는 문자열을 출력합니다.
let x;
if (x === undefined) {
console.log("undefined입니다");
}
삼항 연산자를 사용하여 undefined
변수를 처리할 수도 있습니다.
let x;
const message = x === undefined ? "undefined입니다" : "정의되었습니다";
console.log(message);
결론
undefined
는 자바스크립트에서 변수가 선언되었지만 값이 할당되지 않음을 나타내는 키워드입니다. undefined
와 null
은 서로 다른 개념이며, typeof
연산자를 사용하여 변수가 undefined
인지 확인할 수 있습니다. undefined
변수를 처리할 때는 조건문이나 삼항 연산자를 사용하여 에러가 발생하지 않도록 주의해야 합니다.