본문 바로가기
Front-End/JavaScript

[프론트엔드][JavaScript] 4. 변수 (Variable) - let / var

by nanee_ 2021. 8. 23.
728x90
반응형
SMALL

변수 (Variable)

: 데이터를 저장할 수 있는 메모리 공간을 의미한다.

변수라는 이름은는 '변할 수 있는 수' 라는 의미에서 온 것이다.

 

 

변수 선언과 초기화 

let 키워드를 사용해서 변수를 선언한다.

선언 한 뒤 값을 대입해주는 것을 초기화 한다고 한다.

이미 선언한 변수명으로는 다시 선언이 불가능하게 된다.

 

<script>

    'use strict';
    let 변수명; // 변수 선언
    변수명 = 값; // 변수 초기화
    
</script>

 

'use strict'strict mode 를 사용한다는 의미이고, 코드를 엄격하게 사용하도록 하는 코드이다.

대부분 <script> 태그 안에 첫 줄에 입력하고 코드를 작성한다.

 

 

 

만약, 변수를 초기화 하지 않고 console.log( ) 함수로 변수를 출력한다면 어떻게 출력이 될까?

 

<script>
    'use strict';
    
    let name; // 변수 선언
    
    // 초기화하지 않고 출력
    console.log(name);
</script>

 

 

undefined 라고 출력된다.

이는 값이 없어서 정의되지 않았다고 하는 것이다.

 

 

var 키워드

예전에는 var 키워드를 사용해서 변수를 주로 선언했다.

현재는 var 키워드의 모호함으로 인해서 잘 사용하지 않는다.

 

사용하지 않는 이유 1. 같은 이름의 변수를 선언할 수 있다.

 

<script>
    'use strict';
    var num = 10;
    var num = 20; // 가능
</script>

 

let 키워드 같은 경우에는 이미 선언한 변수명으로는 재선언을 할 수 없다.

하지만, var 키워드로 선언한 변수에서는 오류가 발생하지 않는다.

 

 

사용하지 않는 이유 2. 지역변수와 전역변수의 구별이 없다.

 

<script>
    'use strict';
    var num = 10;
    if(...){
    	var num;
    }
</script>

 

let 키워드의 경우에는 전역에 선언한 변수 num 과 if문 안에서 선언한 지역변수 num은 서로 완전 다른 변수로 인식된다.

하지만, var 키워드는 전역변수 num과 지역변수 num은 같은 변수로 인식된다.

 

 

 

 

 

728x90
반응형
LIST