자바스크립트의 자료형은 크게 2개로 분류
Primitive & Reference
자료 자체가 변수에 저장되는 자료들
var name = 'john';
var age = 20;
👉 문자나 숫자 자료형은 문자나 숫자가 변수에 직접 저장
자료를 변수에 직접 저장하는게 아닌, 자료가 저기에 있어 라는 화살표(레퍼런스)를 변수에 저장
var 사람 = { name : 'kim' };
👉 "{ name : 'kim' }이 저기 저장되어 있어"라는 { name : 'kim' }값을 가리키는 화살표가 저장이 되어있을 뿐임.
kim이라는 데이터가 변수에 저장된게 아니라 kim이라는게 저기 있어~~ 라는 정보만 저장!
❗예제) 함수를 이용해 object를 변경하면?
var 이름1 = { name : '김' };
function 변경(obj){
obj = { name : 'park' };
}
변경(이름1);
👉 안바뀜!
파라미터는 일종의 변수처럼 생성되고 사라지는 존재.
obj라는 파라미터자리에 이름1이라는 변수를 넣으면, var obj = 이름1 이렇게 파라미터형 변수를 만든 것
obj라는 변수에 새로운 화살표를 재할당을 한 것이지 실제 이름1이라는 변수는 건들이지 않음.
var 이름1 = { name : '김' };
function 변경(obj){
obj.name = 'park';
}
변경(이름1);
console.log(이름1);
🍎 코딩애플 강의 : 매우쉽게 이해하는 JavaScript 객체지향 & ES6 신문법