alphabetical
Sorts an array of objects alphabetically by a property
186 bytes
since v12.1.0
Usage
Given an array of objects and a callback function used to determine the property to use for sorting, return a new array with the objects sorted alphabetically. A third, and optional, argument allows you to sort in descending order instead of the default ascending order.
The function preserves the original order of items with equal values.
For numerical sorting, see the sort function.
import * as import _
_ from 'radashi'
const const gods: { name: string; power: number;}[]
gods = [ { name: string
name: 'Ra', power: number
power: 100, }, { name: string
name: 'Zeus', power: number
power: 98, }, { name: string
name: 'Loki', power: number
power: 72, }, { name: string
name: 'Vishnu', power: number
power: 100, },]
const const alphabeticalByName: { name: string; power: number;}[]
alphabeticalByName = import _
_.function alphabetical<{ name: string; power: number;}>(array: readonly { name: string; power: number;}[], getter: (item: { name: string; power: number;}) => string, direction?: "asc" | "desc"): { name: string; power: number;}[]
Sort an array without modifying it and return the newly sorted
value. Allows for a string sorting value.
alphabetical(const gods: { name: string; power: number;}[]
gods, g: { name: string; power: number;}
g => g: { name: string; power: number;}
g.name: string
name) // => [Loki, Ra, Vishnu, Zeus]const const alphabeticalByNameDesc: { name: string; power: number;}[]
alphabeticalByNameDesc = import _
_.function alphabetical<{ name: string; power: number;}>(array: readonly { name: string; power: number;}[], getter: (item: { name: string; power: number;}) => string, direction?: "asc" | "desc"): { name: string; power: number;}[]
Sort an array without modifying it and return the newly sorted
value. Allows for a string sorting value.
alphabetical(const gods: { name: string; power: number;}[]
gods, g: { name: string; power: number;}
g => g: { name: string; power: number;}
g.name: string
name, 'desc') // => [Zeus, Vishnu, Ra, Loki]