"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > JavaScript의 원시 값과 참조 값의 차이점은 무엇입니까?

JavaScript의 원시 값과 참조 값의 차이점은 무엇입니까?

2025-04-21에 게시되었습니다
검색:393

What's the Difference Between Primitive and Reference Values in JavaScript?

primitive vs 참조 vs 참조 값

변수는 두 가지 유형의 값을 저장할 수 있습니다.

숫자, 문자열 및 부울. 변수의 메모리 공간에 직접 저장됩니다.

var x = 10;
참조 값

참조 값은 메모리의 다른 곳에 저장된 객체에 대한 참조입니다. 그들은 객체 자체를 저장하지 않고 대신에 그것을 가리키는 메모리 주소를 포함합니다.
var x = 10;

변수의 저장

프리미티브는 변수의 메모리 공간에 저장됩니다. 예를 들어, x :

var x = 10;

라는 변수에 값을 할당하면 숫자 10은 X의 메모리에 직접 저장됩니다.

What's the Difference Between Primitive and Reference Values in JavaScript? 
반면에, 객체 (배열, 개체 및 함수 포함)는 heap에서 할당됩니다. 변수에 객체를 할당하면 변수는 객체 자체가 아닌 객체의 참조 (메모리 주소)를 저장합니다.

var 객체 = {a : 1, b : 2}; var 참조 = 개체; //`reference '는 이제`객체'

value vs 참조 패스 바이

에 대한 참조입니다. 변수를 함수로 전달할 때 프리미티브는 값으로 전달됩니다 (실제 값의 사본은 이루어집니다). 그러나 기준 값은 참조로 전달됩니다 (참조 자체가 전달됨). 이는 참조 변수를 통해 객체에 대한 변경 사항이 원래 객체에도 반영 될 것임을 의미합니다.

결론

는 Javascript의 변수로 작업하는 데 결정됩니다. 프리미티브는 변수의 메모리에 직접 저장되며, 참조에는 메모리의 다른 곳에 저장된 개체를 가리키는 주소가 포함되어 있습니다. 프리미티브의 패스 바이 값은 독립적 인 사본을 보장하는 반면, 객체에 대한 패스 바이 참조는 원래 객체와 그 참조에서 수정을 동기화 할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3