ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JS (자바스크립트) 변수
    언어/자바스크립트 2023. 5. 6. 09:20

    변수의 개념과 종류

    박스안에 값을 담는 개념이다.

     

    명령어는 3가지로

    var 변수명

    let 변수명

    const 변수명

    이 존재한다.

     

    = 를 사용하여 변수를 담아준다.

    같다는 코드에선 ==이다

     

      var let const
    변수 선언 및 초기값 할당 초기값 없이 변수 선언가능 초기값 없이 변수 선언가능 초기값 없이 변수 선언불가
    재선언
    (re=declaration)
    가능 불가 불가
    재할당
    (update)
    가능 가능 불가
    유효범위
    (scope)
    globally / locally
    blocked
    globally /
    block scoped
    globally / block
    scoped
    호이스팅
    (hoisting)
    scope 최상단으로 hoisting되고, 값은 undefined로 초기화됨 scope 최상단으로 hoisting되고, 값은 초기화 되지 않음
    (TDZ 발생)
    scope 최상단으로 hoisting되고, 값은 초기화 되지 않음
    (TDZ 발생)

     

    변수 선언 및 초기값 할당

    var, let, const 를 사용하여 변수의 이름을 생성하고

    대입 연산자(=)를 통해 변수에 초기값을 대입해 주는 것을 초기값 할당이라고한다.

    const의 경우 변수를 선언할때 초기값을 함께 설정해야 한다.

     

    재선언

    이미 선언한 변수명을 다시 선언 하는 것을 의미 하며 var 만가능

    var a = 1

    var a = 2

    이렇게 재선언이 가능

     

    재할당

    이미 값이 할당된 변수에 새로운 값을 할당하는 것을 의미하며 var , let 만 가능

    let name = 'kim'

    let name = 'lee'  (재선언 불가능)

     

    let name = 'kim'

    name = 'lee' (재할당 가능)

     

    유효범위

    변수에 접근할 수 잇는 범위를 의미한다.

     

    var는 변수가 선언된 위치에 따라 유효범위가 달라진다.

    함수 내에서 선언 되었다면 함수(function/locally scoped) 내에서만 사용 가능하며

    함수 외부에서 선언되었다면 전체적(globally scoped)으로 사용 된다.

     

    반면 let과 const  는 선언된 블록 내에서만 유효하며

    블록은 {} 중괄호의 내부를 의미한다.

    let 과 const 도 블록 외에서 선언된 경우에는 전체적으로 사용이 가능하다.

     

    호이스팅

    코드 실행 전에 변수의 선언과 함수의 선언이 각 스코프의 맨 위로 옮겨지는 js의 매커니즘이다.

     

     

     

     

    참고자료 - https://www.howdy-mj.me/javascript/var-let-const

    '언어 > 자바스크립트' 카테고리의 다른 글

    [자바스크립트] 불변성  (2) 2023.05.24
    JS (자바스크립트) for 반복문  (0) 2023.05.06
    JS (자바스크립트) 조건문  (0) 2023.05.06
    JS (자바스크립트) 함수  (1) 2023.05.06
    HTML, CSS, JS의 관계  (0) 2023.05.06
Designed by Tistory.