[javascript] Immutable.js에서 Record 자료구조를 사용하는 방법은 어떻게 되나요?
먼저, Immutable.js를 설치해야 합니다. npm을 사용하면 다음과 같이 설치할 수 있습니다.
npm install immutable
이제 Immutable.js를 사용하여 Record 객체를 생성해보겠습니다. 다음과 같이 Record()
함수를 사용하여 Record 클래스를 만들 수 있습니다.
const { Record } = require('immutable');
// Record 클래스를 생성합니다.
const Person = Record({
name: '',
age: 0,
});
// Record 객체를 생성합니다.
const john = new Person({
name: 'John',
age: 30,
});
console.log(john.name); // 출력: "John"
console.log(john.age); // 출력: 30
Record()
함수에 전달하는 인자는 객체의 기본값을 정의합니다. 이 예시에서는 name
과 age
속성을 가진 Person 객체를 생성했습니다. 기본값으로는 name
은 빈 문자열로, age
는 0으로 설정했습니다.
Record 객체를 생성하면 기본값으로 초기화된 객체를 얻을 수 있습니다. 그러나 이 객체를 변경하려면 set()
메소드를 사용해야 합니다. 예를 들어, 다음과 같이 Record 객체의 값을 변경할 수 있습니다.
const updatedJohn = john.set('age', 31);
console.log(updatedJohn.age); // 출력: 31
set()
메소드는 변경한 속성과 값을 전달받아 변경된 Record 객체를 반환합니다.
Record 자료구조를 사용하면 Immutable.js에서 불변 객체를 효과적으로 관리할 수 있습니다. Record 객체를 사용하여 데이터를 변경할 때마다 새로운 객체가 생성되므로 원본 데이터의 불변성이 유지됩니다.
더 자세한 내용은 Immutable.js 공식 문서를 참고하세요.