원시타입, 참조타입

c0ng·2023년 1월 20일
0

참조타입 두둥 (대장님 코드🙌)

function A(){
    this.val = 0;
}
A.prototype.set = function(v){
    this.val = v;
}

let a = new A();
let b = a;
a.set(1);

console.log(b.val);

원시타입이든 참조타입이든 b = a 에 실행은 다른게 없습니다 a 의값을 b에 집어넣는다
하지만 어떤 값을 할당 하는것에 다른점이 있습니다

원시타입 같은경우 a에 할당 되어있는 1자체를 b에 저장하지만
참조타입 같은경우 a에 할당되어 있는 주소(링크라고 설명해주심)를 b에 저장합니다

참조타입에는 object, array, function 이 있으며 이를 변수로 할당하면
메모리의 주소를 가르키는 값이 복사가되어 변수에 할당됩니다

원시타입과 가장 큰 차이점은 변수의 크기가 동적으로 변한다는 것이다

참조타입을 부르는 방법이 여러가지 있으며
어떤 값을 참조한다 (reference)
어떤 값의 주소를 가르킨다 (address)
어떤 값을 가르켜 포인팅한다 (pointer)

자바스크립트는 변수가 다른곳에 들어가거나 이동을 할때 항상 값을 복사합니다
그대상이 실제값 전체(원시타입)인지 아니면 값을 가르키고있는 주소값(참조타입)인지가 다를 뿐입니다

profile
농부 대장님 아래서 일하는 잡초

0개의 댓글

관련 채용 정보