반응형
const로 선언된 상수는 변경 불가능
let 으로 선언된 변수는 변경 가능
- 코드 길어지면 변수가 어떤 값을 가질 지 모르기 때문
const로 선언된 객체의 프로퍼티의 값은 변경 가능
let x = 1;
x = 4;
const y = x;
y = 3;
x = 2;
console.log(x);
→ const변수를 변경하려 해서 error 발생
let team1 = ['Drum', 'Bass', 'Saxophone'];
const team2 = team1;
team1.splice(2, 1, 'Trumpet');
team2.splice(2, 1, 'Piano');
console.log(team1);
console.log(team2);
// [ 'Drum', 'Bass', 'Piano' ]
// [ 'Drum', 'Bass', 'Piano' ]
- 배열은 참조형 값이기 때문에, 이때 주소 값이 복사되어서 일단 team1과 team2는 서로 같은 배열을 가리킴.
- const 키워드로 변수를 선언하게 되면 값을 재할당할 수 없지만, 할당된 값이 객체나 배열일 경우 메소드를 통해서 그 값을 변경할 수 있음.
반응형