js undefined check / if / 검사 / undefined 확인 방법 / 에러나는 이유 /
javascript 에서 undefined 확인 방법
결론을 이야기하면, 정의되지 않은 변수에 대해서는 typeof myvar === undefined
로만 check 를 할 수 있다. 하지만 정의되지 않은 property 에 대해서는 다양한 방법으로 check 를 할 수 있다.
참고로, typeof myvar === "undefined"
가 처음에 있던 문법이고, typeof myvar === undefined
는 “5th Edition – ECMAScript 2009” 부터 도입됐다고 한다.[ref. 1]
아래처럼 defined 가 안된 myvar 을 check 할 수 있다.
if( typeof myvar === undefined ) {
console.log('myvar is not defined')
}
정의되지 않은 property 는 다양한 방법으로 undefined 를 check 할 수 있다.
if( window.myvar === undefined ){
console.log('myvar is not defined')
}
// or
if( window.myvar == null ){
console.log('myvar is not defined')
}
// or
if( !window.myvar ){
console.log('myvar is not defined')
}
// or
if( typeof window.myvar === undefined ){
console.log('myvar is not defined')
}
하지만 아래처럼은 안된다.
if( myvar === undefined ) {
// 여기로 오지 않는다.
// ReferenceError 가 발생한다.
console.log('myvar is not defined')
}
if( !myvar ) {
// 여기로 오지 않는다.
// ReferenceError 가 발생한다.
console.log('myvar is not defined')
}
댓글 없음:
댓글 쓰기