Immutable,mutable

sang hyeok Lee·2022년 4월 6일
0

Immutable

immutable의 뜻은 불변이라는 뜻이다. 그래서 뜻 그대로 변경이 불가능한, 바뀌지 않는 객체를 의미한다.
immutable객체의 종류에는 string, Boolearn, integer, Float 등이 있다. 대부분이 원시타입의 데이터이다.
immutable객체는 원본 데이터를 유지하려는 속성이 있다. 그래서 값을 복사해서 새로운 메모리 주소에 할당을 한다.

let arr1 = [1,2,3]
let arr2 = [4,5]
let concatArr = arr1.concat(arr2)

console.log(arr1) // [1,2,3]
console.log(arr2) // [4,5]
console.log(concatArr) // [1,2,3,4,5]

concat을 통해서 배열을 합쳐주어도 arr1과 arr2의 값은 변하지 않는다. concat메소드는 immutable하다는 것을 알 수 있다.


mutable

mutable은 반대로 '변경할 수 있는'이라는 뜻을 가진다. 그래서 변경이 가능한 객체를 의미한다.
대표적인 타입에는 array 등이 있다.
nutation은 원본을 변경한다.

let arr =[1,2,3,4]

arr.pop()
console.log(arr) // [1,2,3]

pop을 통해서 맨 뒤에 4를 삭제햐 주어서 arr의 원본 배열이 수정이 되었다. pop은 mutable 하다는 것을 알 수 있다.

profile
개발자 되기

0개의 댓글