본문 바로가기
✨ Front-end/자바스크립트(JS)

[JavaScript] var, let, const의 변수 선언 방식과 각각의 차이

by 환풍 2023. 3. 3.
728x90

변수 사용시 반드시 선언이 필요하다.

변수를 선언할 때는 var,  let, const를 사용한다.

 

1
2
3
4
5
6
7
var circle = {
    radius : 5// <- 프로퍼티
 
    getDiameter: function() {  // <- 메서드
        return 2 * this.radius ;  // this는 circle을 가리킨다.
    }
};
cs

 

1
2
3
4
5
6
7
var obj = {
    name : 'Lee',
    sayHi : function(){
        console.log(`Hi ! ${this.name}`);
    }
};
obj.sayHi();
cs

 

1
2
3
4
5
6
7
8
9
const hi = {
    name : 'Park',
    sayHi() {
        console.log(`Hi ! ${this.name}`);
    }
};
hi.sayHi();
hi.name = " Kim";
hi.sayHi();
cs

 

 

var ( 함수 레벨 )

 [ 중복 선언 가능, 재할당 가능 ]


let (블록 레벨)

[ 중복 선언 불가능, 재할당 가능, 변하는 값을 저장할 때 사용한다. ]

블록 스코프는 { }를 통해서 영역을 구분하는 것이다. 블록 { } 안과 밖의 변수 이름이 같더라도 스코프가 다르므로 변수가 선언되고 각 변수에 할당된 값이 대체되지 않고 유지된다.

 

this

Var를 통해 전역에서 변수를 선언하게 되면 this를 통해 접근이 가능했었다.

하지만. let을 통해 접근하게 되면 this를 통한 전역변수의 접근이 불가능하다.

let을 사용한 변수는 전역으로 사용될 수 없다.


const (블록 레벨)

[ 중복 선언 불가능, 재할당 불가능, 선언한 변수는 재할당이 금지된다.

즉, 단 한번만 할당할 수 있는 변수를 선언한다.

변하지 않는 값을 저장할 때 사용. ]

 

(var, let)과 const의 차이는 재할당 가능의 여부이다. let, var은 재할당 가능, const는 재할당 불가능.

또한, let과 var의 차이로는 중복 선언 가능의여부이다. var는 중복 선언 가능, let은 중복 선언 불가능

 

 

반응형

댓글