[javascript] Immutable.js에서 제공하는 데이터 필터링 메소드에는 어떤 것들이 있나요?

Immutable.js는 JavaScript에서 불변성을 유지할 수 있는 자료구조를 제공하는 라이브러리입니다. 데이터 필터링은 이러한 자료구조에서 특정 조건을 만족하는 항목만 선택하는 작업을 말합니다. Immutable.js에서 제공하는 데이터 필터링 메소드는 다음과 같습니다:

  1. filter(): 주어진 조건에 맞는 항목만 필터링하여 새로운 immutable 자료구조를 반환합니다. 예를 들어, 리스트에서 짝수만 선택하거나, 맵에서 특정 속성을 가진 항목만 선택할 수 있습니다.
const { List } = require('immutable');

const numbers = List([1, 2, 3, 4, 5]);
const evenNumbers = numbers.filter((num) => num % 2 === 0);
console.log(evenNumbers); // List [ 2, 4 ]
  1. filterNot(): filter()와 반대로 주어진 조건을 만족하지 않는 항목만 필터링하여 새로운 immutable 자료구조를 반환합니다.
const { List } = require('immutable');

const numbers = List([1, 2, 3, 4, 5]);
const oddNumbers = numbers.filterNot((num) => num % 2 === 0);
console.log(oddNumbers); // List [ 1, 3, 5 ]
  1. find(): 주어진 조건을 만족하는 첫 번째 항목을 반환합니다. 만약 조건을 만족하는 항목이 없다면 undefined를 반환합니다.
const { List } = require('immutable');

const numbers = List([1, 2, 3, 4, 5]);
const foundNumber = numbers.find((num) => num > 3);
console.log(foundNumber); // 4
  1. findLast(): find()와 유사하지만, 조건을 만족하는 마지막 항목을 반환합니다.
const { List } = require('immutable');

const numbers = List([1, 2, 3, 4, 5]);
const lastFoundNumber = numbers.findLast((num) => num < 4);
console.log(lastFoundNumber); // 3

위의 메소드들은 주어진 조건을 기반으로 데이터를 필터링하여 새로운 immutable 자료구조를 반환합니다. 이를 활용하여 원하는 데이터를 선택하고, 불필요한 데이터를 걸러낼 수 있습니다. Immutable.js의 다양한 메소드를 활용하여 데이터를 효율적으로 다룰 수 있습니다.