undefined 

- 변수가 선언은 되었지만 값이 할당된 적이 없는 변수에 접근하건, 존재하지 않은 객체 프로퍼티에 접근할 경우 반환되는 값.

- 논리 연산에서 false로, 

  산술연산에서는 NaN로, 

  문자열 연산에서는 "undefined"로 변환되어 연산됨.



null

- 예약어

- 보통 참조 타입과 함께 쓰여, 어떠한 객체도 나타내지 않는 특수한 값으로 사용

- 논리 연산에서는 false로, 

   산술연산에서는 0으로, 

   문자열 연산에서는 "null"로 변환되어 연산됨.

		
//undefined와 null
var a;
var obj = {};
		
document.writeln('a: '+ a);//a: undefinde
document.writeln('obj: '+ obj);//obj: [object Object]
document.writeln('obj.prop: '+ a);//a: obj.prop:: undefined
		
obj = null; //객체 참조를 제거
document.writeln("obj: " + obj);//obj : null
		
if(!a){} //!undefined
if(!obj){} //!null


Posted by 토끼구이 달팽이맛나