[javascript] Lodash의 디자인 패턴 함수들과 사용 예제

Lodash는 자바스크립트 유틸리티 라이브러리로, 다양한 좋은 디자인 패턴 함수들을 제공합니다. 이러한 함수들을 효과적으로 활용하면 코드를 더욱 간결하고 효율적으로 작성할 수 있습니다. 이번 블로그 포스트에서는 몇 가지 Lodash 디자인 패턴 함수와 그 사용 예제를 살펴보겠습니다.

1. _.forEach()

_.forEach() 함수는 배열 또는 객체의 모든 요소에 대해 반복문을 실행하는 함수입니다. 각 요소에 대해 지정된 콜백 함수를 호출하여 필요한 작업을 수행할 수 있습니다.

const users = [
  { id: 1, name: 'John' },
  { id: 2, name: 'Jane' },
  { id: 3, name: 'Alex' }
];

_.forEach(users, user => {
  console.log(user.name);
});

위 예제에서는 users 배열의 각 요소에 대해 해당 요소의 name 속성을 출력하는 작업을 수행합니다.

2. _.map()

_.map() 함수는 배열 또는 객체의 모든 요소에 대해 지정된 함수를 적용하여 새로운 배열을 생성합니다. 이 함수를 사용하면 원본 데이터를 변경하지 않고 원하는 변형된 데이터를 생성할 수 있습니다.

const numbers = [1, 2, 3, 4];

const squaredNumbers = _.map(numbers, num => num * num);

console.log(squaredNumbers); // [1, 4, 9, 16]

위 예제에서는 numbers 배열의 각 요소를 제곱하여 squaredNumbers 배열을 생성합니다.

3. _.filter()

_.filter() 함수는 배열이나 객체에서 지정된 조건을 만족하는 요소들로 이루어진 새로운 배열을 반환합니다. 조건에 맞는 요소들만 필터링하여 가져올 수 있습니다.

const users = [
  { id: 1, name: 'John', isActive: true },
  { id: 2, name: 'Jane', isActive: false },
  { id: 3, name: 'Alex', isActive: true }
];

const activeUsers = _.filter(users, user => user.isActive);

console.log(activeUsers);
// [
//   { id: 1, name: 'John', isActive: true },
//   { id: 3, name: 'Alex', isActive: true }
// ]

위 예제에서는 users 배열에서 isActive 속성이 true인 요소들로 이루어진 activeUsers 배열을 생성합니다.

이처럼 Lodash에서 제공하는 디자인 패턴 함수들은 코드 작성을 더욱 효율적으로 만들어주는 강력한 도구입니다. 이 포스트에서는 _.forEach(), _.map(), _.filter() 함수를 예시로 살펴보았지만, Lodash는 그 밖에도 다양한 디자인 패턴 함수들을 제공하고 있습니다. Lodash 공식 문서에서 더 많은 정보를 확인할 수 있으니 참고해보세요.

참고 자료