본문 바로가기

목록이 없습니다.

[jQuery] 변수 선언 시 var와 var생략 차이

Framework/jQuery



    jQuery는 JavaScript 기반 언어로 JavaScript 역시 이슈에 해당된다. 그럼 var 변수 선언과 var를 생략한 변수 선언의 차이를 정리해보자.


    var test1;

    var test2, test3;


    var test4 = 4;

    test5 = 5;


    jQuery나 JavaScript 에서 변수를 선언할 때 이런식으로 선언을 하는데 var를 붙인건 영구적이다. 즉 delete연산자로 변수를 지우려고 하면 에러가 발생한다. 같은 변수를 여러번 초기화해도 상관없으며 선언되지 않은 변수에 대해서는 초기화 시 내부적으로 변수선언이 된다. 



    <결론>

    var로 변수선언을 하는 경우

    1. 영구적이다. (delete연산자로 변수를 지울 수 없다.)

    2. 지역변수이다.



    var를 생략하고 변수를 선언하는 경우

    1. delete연산자로 변수를 지울 수 있다.

    2. 전역변수이다. (실제로는 아래와 같은 과정을 거친다)


    선언하려는 변수가 바로 위의 scope에 존재하는지 확인하고 없으면 그 위, 없으면 그 위, 없으면 그 위, 반복하다가 global영역까지도 없다면 global영역에 변수선언하게 된다.