메모리영역
에서 변경 가능 여부를 의미
값을 새로 할당할 경우 새로 메모리 생성하여 가리킴
let language = 'javascript';
me = 'typescript';
/*
[result]
language: 'typescript'
메모리영역에는 'javascript'와 'typescript'를 가지고 있음.
'typescript' 라는 값을 새로 생성하여 저장하므로
*/
let jaen = {location: 'earth'};
let jaek = jaen;
jaek.location = 'moon';
/*
[result]
jaen: {location: 'moon'}
jaek: {location: 'moon'}
값이 저장된 메모리 주소를 함께 바라보기 때문에 메모리 영역 값이 바뀜
*/
let jaen = {location: 'earth'};
let jaek = jaen;
let place = jaen.location; //'earth'
jaek.location = 'moon';
/*
[result]
place: 'earth'
jaen: {location: 'moon'}
jaek: {location: 'moon'}
*/