front-end/JavaScript
javascript 변수(var, let, const 차이점)
Hoon0211
2023. 8. 8. 21:51
728x90
1. java와 javascript의 차이점
- Java
- int age = 20;
- char alpha = 'a';
- double avg = 78.4;
- 강력한 자료형
- javascript
- var age = 20;
- var alpha = 'a';
- avg = 35.5;
2. var / let / const 차이점
- Var
- 변수 재선언이 가능하다.
- 변수 재할당이 가능하다.
- 호이스팅시 변수값이 초기화 된다.
- 전역 범위를 가지고 있다.
- 단 함수 내에서 선언시 함수 범위로 지정이 된다.
var a = 1;
var a = 2; //가능
var b = 1;
b = 2; //가능
// 함수 범위 내에서만 사용 가능
function helloFunction() {
var hello = "hello";
}
console.log(hello); // 에러 발생
- Let
- 변수 재선언이 불가능하다
- 변수 재할당이 가능하다
- 호이스팅시 변수가 초기화 되지 않는다.
- 단 선언 이전에 사용시 참조 오류가 발생한다.
- 단 선언 이전에 사용시 참조 오류가 발생한다.
- 블록 범위를 가지고 있다.
let a = 1;
let a = 2; // 불가능
let b = 1;
b = 2; // 가능
// 블록 범위를 가지는 let
let hi = "Hi";
if (true) {
let hi = "Hello";
console.log(hi); // "Hello"
}
console.log(hi); // "Hi"
- Const
- 변수 재선언이 불가능하다.
- 변수 재할당이 불가능하다
- 단 객체의 속성은 업데이트가 가능하다.
- 단 객체의 속성은 업데이트가 가능하다.
- 호이스팅시 변수가 초기화 되지 않는다.
- 블록 범위를 가지고 있다.
const a = 1;
const a = 2; // 불가능
const b = 1
b = 2 // 불가능
// 속성의 업데이트는 가능하다.
const hi = {
message : "Hi",
number : "five"
}
hi.message = "Hello"; // 가능하다.
728x90