Javascript | immutable와 mutable

space's pace·2022년 7월 1일
0

Javascript

목록 보기
17/20

Immutable

Immutable 객체는 내용이 변하지 않는 객체를 말한다. 객체는 다양한 이유로 불변적일 수 있는데, 예시로 아래와 같은 경우가 있다.

  • 성능을 향상시키기 위함
  • 객체가 미래에 변할 계획이 없을 때
  • 메모리 사용을 줄이기 위함
  • 전체 객체를 복사하지 않고 객체 참조를 만듦
  • Thread-safety (쓰레드끼리 자원 공유할 때 안전하다는 뜻 같음)
  • 여러 개의 쓰레드가 서로 간섭하지 않고 같은 객체를 참조할 수 있음

#Mutable

Mutable은 바뀔 수 있는 변수 타입을 말한다. Javascript에서는 object와 array만 Mutable한 타입이고, 원시 타입은 Immutable하다.

Mutable한 값을 Immutable하게 만들기 위해서 새로운 변수를 만들어 보관할 수 있지만, 이전 값은 여전히 메모리에 남아있기 때문에 GC가 필요하다.


자주 쓰이는 immutable와 mutable 메소드


타입과 메서드 별로 알아보는 mutable VS immutable !

자바스크립트 문자열은 변경 불가능한 값(immutable value)
이런 값을 'primitive values' 라 한다. (변경이 불가능하다는 뜻은 메모리 영역에서의 변경이 불가능하다는 뜻이다. 재할당은 가능하다)



참고 | https://2ssue.github.io/common_questions_for_Web_Developer/docs/Programming/12_immutable&mutable.html
https://joy-codeing-lee.tistory.com/52

profile
블로그 이사 준비중!

0개의 댓글