diff options
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/word/filter-word-list-by-length.ts | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/src/modules/word/filter-word-list-by-length.ts b/src/modules/word/filter-word-list-by-length.ts index 60c6fae9..f3fcd5ab 100644 --- a/src/modules/word/filter-word-list-by-length.ts +++ b/src/modules/word/filter-word-list-by-length.ts @@ -1,4 +1,5 @@ import { FakerError } from '../../errors/faker-error'; +import { groupBy } from '../../internal/group-by'; /** * The error handling strategies for the `filterWordListByLength` function. @@ -13,14 +14,7 @@ const STRATEGIES = { wordList: ReadonlyArray<string>, length: { min: number; max: number } ): string[] => { - const wordsByLength = wordList.reduce<Record<number, string[]>>( - (data, word) => { - (data[word.length] = data[word.length] ?? []).push(word); - return data; - }, - {} - ); - + const wordsByLength = groupBy(wordList, (word) => word.length); const lengths = Object.keys(wordsByLength).map(Number); const min = Math.min(...lengths); const max = Math.max(...lengths); |
