null과 undefinded
"JavaScript는 변수의 자료형의 결정 시점은 {할당할 때}이다."
정의
- "undefined"
- 아직 자료형이 결정되지 않았다. 즉, "변수나 함수가 선언은 되었으나, 값을 할당하지는 않았다"는 뜻이다.
- 주의할 것은, 아직 선언되지 않은 변수나 함수 등도 모두 undefined로 확인이 되나, 그렇다고, 변수나 함수가 선언되어 있다는 뜻은 아니다.
- "null"
- 이미 자료형이 결정되었다. 즉, "변수나 함수가 선언은 되었고, 값을 null로 할당했다"는 뜻이다.
자료형
- null: "object"
- undefined: "undefined"
typeof null
"object"
typeof undefined
"undefined"
"void 0"과 비교
- null: false
- undefined: true
null === void 0
false
undefined === void 0
true
"null"과 "undefined" 비교
"{형변환}을 하느냐('=='), 안하느냐('===')에 따라 결과가 다르다."
null == undefined
true
null === undefined
false
추가. delete이후 값에 대한 확인
"{형변환}을 하느냐('=='), 안하느냐('===')에 따라 결과가 다르다."
const arr1 = ['a1', 'a2', 'a3', 'a4', 'a5'];
delete arr1[2];
true
console.log(arr1);
(5) ['a1', 'a2', empty, 'a4', 'a5']
const arr1 = ['a1', 'a2', 'a3', 'a4', 'a5'];
arr1[2] = undefined;
undefined
console.log(arr1);
(5) ['a1', 'a2', undefined, 'a4', 'a5']
댓글
댓글 쓰기