728x90
// [ JS 데이터 ] 원시형 - Boolean, null, undefined
// Boolean (불리언)
const a = true
const b = false
if (b) { // false
console.log('if : Hello')
} else { // !(false)
console.log('else : Hello')
}
// =========================================================================
let age = null // null => 명시적이다. == 존재 하지 않다. / 값이 비어 있다. / 값을 알 수 없다.
console.log(age) // null
setTimeout(function () {
age = 28
console.log(age) // 1초 후에 null 에서 28 으로 변경
}, 1000)
// =========================================================================
let test = undefined
console.log(test) // undefined => 암시적이다. == 직접 값을 할당 하지 않아도 이미 그 값은 존재 한다.
setTimeout(function () {
age = 96
console.log(age) // 1초 후에 undefined 에서 96 으로 변경
}, 1000)
// =========================================================================
const user = { // { } 은 객체 데이터.
name: 'Hwanii',
age: 28
}
console.log('user.name : ' + user.name)
console.log('use.age : ' + user.age)
console.log('user.email : ' + user.email) // undefined
console.log('user.abc : ' + user.abc) // undefined
// user 객체에는 email 과 abc 라는 속성이 없다.
// 하지만, console.log() 의 인자로 넣으면, 값이 없는데도 출력을 한다. => undefined
// 속성이 없는데도 속성을 조회 하려고 시도 해서,
// 암시적으로 값이 할당 되지 않는 상태를 의미하는 undefined 를 출력 한다.
// 의도적으로 어떤 특정한 속성에 값이 없는것을 출력시키기 위해서는 null 을 명시해주도록 한다. => 명시적 표기.
const user2 = { // 예시를 통해 user2 객체 생성
email: null,
abc: null
}
console.log('user2.email : ' + user2.email) // null
console.log('user2.abc : ' + user2.abc) // null
// [ 정리 ]
// 어떤 변수의 값이 정확 하게 존재 하지 않는 것을 명시적 으로 표현 => null로 명시 하기.
// 어떤 변수의 값이 아직 할당 되지 않은 상태 => 암시적 => undefined 로 자동 표기.
반응형
'자바스크립트 (JavaScript) > 이론' 카테고리의 다른 글
[ JS 데이터 ] 참조형 - Object (0) | 2023.10.30 |
---|---|
[ JS 데이터 ] 참조형 - Array (0) | 2023.10.30 |
[ JS 데이터 ] 원시형 - String, Number (1) | 2023.10.29 |
생성자 함수 개념 (0) | 2023.08.27 |
변수, 호이스팅, TDZ (Temporal Dead Zone) 요약 (0) | 2023.08.20 |