//담을 수 있는 가장 작은단위의 애들을 primitive type data라고 한다 (number,String,boolean, null, undefined)
let number = 2;
let number2 = number; //number에 있는 data를 number2에 복사해서 가져온다(각각독립됨)
console.clear();
//object
let obj = {
name:"ellie",
age:5,
};
console.log(obj.name);
let obj2 = obj; //obj가 가지고있는 주소가 obj2에 복사됨
console.log(obj2.name);
obj.name = 'james';
console.log('--------------')
console.log(obj.name);
console.log(obj2.name); //obj와 obj2가 가르키는 memory가 같으므로 obj를 수정해도 obj2에서 접근하는 값이 바뀜(reference)
let a = 2;
a = 5;
const num = 2;
num = 4;
object를 변수에 할당하면 변수는 단지 reference주소만 가지고 있고
value들은 메모리 영역에 따로 저장이 되어있다.
하지만 오브젝트가 아닌 primitive type data들을 변수에 담아준다면(ex. const a = 1)
a라는 변수에는 reference가 있는것이 아니라 바로 1이라는것이 담긴다.(참조가아님)
'JS > 드림코딩앨리' 카테고리의 다른 글
14. 함수의 선언 및 호출 (0) | 2021.04.22 |
---|---|
13. 비동기의 꽃 JavaScript async 와 await 그리고 유용한 Promise APIs (0) | 2021.04.22 |
12. 프로미스 개념부터 활용까지 JavaScript Promise (0) | 2021.04.22 |
11. 비동기 처리의 시작 콜백 이해하기, 콜백 지옥 체험 (0) | 2021.04.21 |
10. JSON 개념 정리 와 활용방법 (0) | 2021.04.21 |