[javascript] Immutable.js에서 제공하는 데이터 추출 메소드에는 어떤 것들이 있나요?
Immutable.js는 JavaScript를 위한 불변성 라이브러리로, 데이터의 변경을 효율적으로 관리합니다. Immutable.js는 다양한 데이터 추출 메소드를 제공하여 데이터의 불변성을 유지하면서 필요한 정보를 추출할 수 있습니다.
.get(key, [defaultValue])
: 주어진 키에 해당하는 값을 반환합니다. 만약 주어진 키가 존재하지 않을 경우,defaultValue
값을 반환합니다. 예시:const map = Immutable.Map({name: 'John', age: 30}); const name = map.get('name'); // 'John' const gender = map.get('gender', 'Unknown'); // 'Unknown'
.getIn(keys, [defaultValue])
: 주어진 키 경로에 따라 값을 반환합니다.keys
는 배열로 구성되며, 배열의 각 요소는 해당 키에 따른 중첩된 맵이나 리스트를 나타냅니다. 예시:const map = Immutable.Map({person: {name: 'John', age: 30}}); const name = map.getIn(['person', 'name']); // 'John' const gender = map.getIn(['person', 'gender'], 'Unknown'); // 'Unknown'
.has(key)
: 주어진 키가 존재하는지 확인합니다. 만약 주어진 키가 존재한다면true
를 반환하고, 그렇지 않다면false
를 반환합니다. 예시:const map = Immutable.Map({name: 'John', age: 30}); const hasName = map.has('name'); // true const hasGender = map.has('gender'); // false
.hasIn(keys)
: 주어진 키 경로가 존재하는지 확인합니다.keys
는 배열로 구성되며, 배열의 각 요소는 해당 키에 따른 중첩된 맵이나 리스트를 나타냅니다. 예시:const map = Immutable.Map({person: {name: 'John', age: 30}}); const hasName = map.hasIn(['person', 'name']); // true const hasGender = map.hasIn(['person', 'gender']); // false
위의 메소드들을 사용하여 Immutable.js로 데이터를 추출하면, 데이터의 불변성을 유지할 수 있으면서 필요한 정보를 다룰 수 있습니다.