[컴] javascript 에서 undefined 확인 방법

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')
}

Reference

  1. How can I check for "undefined" in JavaScript? - Stack Overflow

댓글 없음:

댓글 쓰기