JavaScript - 기본형과 참조형의 종류 및 차이점
in JS on Scope, Hoisting
- Primitive Type (기본형) 값을 그대로 할당한다
- Reference Type (참조형) 값이 저장된 주소값을 할당(참조)
- 객체 1.배열 2. Function 3. RegExp
var a;
a = 10;
var b = 'abc'; //b->@314
b = false;
var c = b; // c->@315, 315->false
b===c 이다.
c - 20; //c->@315, 315->20.
var obj = {
a:1,
b: 'b'
};
//obj->@413 참조형은 프로퍼티와(키) 데이터(값)으로 이루어져 있음.
//413->@1011
// 1011-> { a:@1012, b:@1013}
// 1012 -> 1
// 1013 -> 'b'
var obj2 = obj; //obj2->@414
//414->@1011
obj2.a = 10;
//1012->10
console.log(obj.a); //10
obj === obj2
var obj3 = {
a: [4,5,6]
};
//obj3 -> @547
//547->{a:@1185}
//1185-> [@1326, @1327, @1328]
//1326->4, ,
obj3.a = 'new'; //1185->'new', 1326~1328 까지 링크 사라짐. GC 대상