[javascript] Underscore.js에서 제공하는 배열 함수들 중에서 배열 변환하는 함수는 어떤 게 있나요?
Underscore.js는 배열 변환을 위한 다양한 함수를 제공합니다. 몇 가지 주요한 함수들을 살펴보겠습니다.
_.map()
: 배열의 각 요소에 대해 주어진 함수를 적용하고, 결과 값을 새로운 배열로 반환합니다.const numbers = [1, 2, 3, 4, 5]; const doubledNumbers = _.map(numbers, (num) => num * 2); // [2, 4, 6, 8, 10]
_.filter()
: 주어진 함수를 이용해 배열에서 조건을 만족하는 요소만을 추출하여 새로운 배열로 반환합니다.const numbers = [1, 2, 3, 4, 5]; const evenNumbers = _.filter(numbers, (num) => num % 2 === 0); // [2, 4]
_.reduce()
: 배열의 각 요소에 대해 주어진 함수를 적용하고, 최종적으로 하나의 결과 값을 반환합니다.const numbers = [1, 2, 3, 4, 5]; const sum = _.reduce(numbers, (acc, num) => acc + num, 0); // 15
_.flatten()
: 중첩된 배열을 평탄화하여 1차원 배열로 변환합니다.const nestedArray = [1, [2, [3, [4, 5]]]]; const flatArray = _.flatten(nestedArray); // [1, 2, 3, 4, 5]
_.sortBy()
: 주어진 함수에 따라 배열을 정렬합니다.const albums = [ { title: 'albumC', releaseYear: 2015 }, { title: 'albumA', releaseYear: 2010 }, { title: 'albumB', releaseYear: 2020 }, ]; const sortedAlbums = _.sortBy(albums, (album) => album.releaseYear); /* [ { title: 'albumA', releaseYear: 2010 }, { title: 'albumC', releaseYear: 2015 }, { title: 'albumB', releaseYear: 2020 }, ] */
이 외에도 Underscore.js에는 다양한 배열 변환 함수들이 있으니 필요한 기능에 맞게 사용하실 수 있습니다.