• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

참조 변수에 대해 질문드립니다.

18.11.30 17:39 작성 조회수 137

0

const obj = {

a: 1,

b: 2,

}

obj2 = obj

와 같은 코드가 있을 때 obj2는 obj를 참조하는 참조 변수이고, obj의 값을 따라간다는 것을 알고 있습니다.

대개 다른 프로그래밍 언어에서는 obj2를 변경할 경우에 obj에는 영향을 주지 않고 obj의 값이 obj2에 영향을 주는 것으로 알고 있었는데 자바스크립트에서 테스트해보니 obj2에서 값을 변경하거나 추가해도 obj에 똑같이 반영이 되는것을 확인할 수 있었습니다. (제가 잘못 알고 있는 것일수도 있습니다.)

그렇다면 참조형 변수를 사용하는 의미가 없지 않나요? 아니면 참조형 변수만을 독립적으로 사용할 수 있는 방법이 있는지 궁금합니다.

또한 예시 코드처럼 단순히 저런 참조형 변수를 사용한다면 어떤 목적에서 사용하는지도 알고 싶습니다.

답변 2

·

답변을 작성해보세요.

0

호눅스님의 프로필

호눅스

2019.02.28

참조에 대해 잘 모르면 https://opentutorials.org/course/743/6507 도 보시면 좋을 듯 해요.

0

대부분의 언어에서 참조 시 서로 영향을 줍니다. obj을 바꿔도 obj2에 반영이 되고, obj2를 바꿔도 obj에 반영이 됩니다.

사실 저렇게 직접적으로 대입하는 경우는 거의 없다고 보시면 됩니다. 다만, 저 성질을 알고 있어야 대입을 할 때 참조를 할지, 복사를 할지 주의하게 됩니다. 제가 요즘 하고 있는 유튜브 강좌 js편 보시면 더 이해가 쉬울 것입니다.