web

undefined와 null의 차이점

inthyes 2023. 7. 30. 12:15

undefined와 null은 다른 것일까?

 

undefined는 변수에 값이 할당되지 않았음을 의미한다.

null은 데이터의 값이 유효하지 않은 상태를 말하며 변수에 할당된 값이 유효하지 않음을 의미한다.

 

첫번째 예시로 inthyes라는 변수를 값없이 선언한 후 출력하면 아래와 같이 undefined가 뜬다.

할당되지 않음을 의미하는 것이다.

var inthyes;
console.log("undefined 출력",inthyes)

 

두번째 예시로 inthyes을 html에서 prompt로 입력받기로 하고 취소할 경우엔 null이 출력된다.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        var inthyes = prompt("값 입력");
        console.log("null 출력",inthyes)
    </script>
</body>
</html>

취소 버튼을 누른 후 [F12]버튼을 통해 웹 콘솔을 확인해보면 null이 출력된다.

 

두 예시와 같이 null과 undefined는 다르다. 이 차이를 알아야 개발시 null, undefined로 인한 코드 오류에 대한 디버깅이 가능하다.