numberSort
输入参数 arr,根据数字大小对其进行排序,参数 order 指定排序顺序。
order 可以是 'asc'(升序)或者 desc(降序),默认为 'asc'。内部会调用 numberComparatorAsc 或者 numberComparatorDesc。
可选参数 getter 用于从数组 arr 的元素中获取数值,默认情况下直接使用元素本身进行排序。getter值为 getByPath 函数的字段路径,或者回调函数。
Added in v0.0.2
Usage
ts
import { numberSort } from 'parsnip-kit'
const numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
const res = numberSort(numbers) // [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
res === numbers // true
const nestedObjects = [
{ details: { age: 30 } },
{ details: { age: 25 } },
{ details: { age: 35 } }
]
numberSort(nestedObjects, 'asc', 'details.age')
// [
// { details: { age: 25 } },
// { details: { age: 30 } },
// { details: { age: 35 } }
// ]API
Type Parameter
| Arg | Type | Description |
|---|---|---|
T | | 数组元素类型 |
R | extends 'asc' | 'desc' = 'asc' | 'desc' | 排序顺序的类型 |
Arguments
| Arg | Type | Optional | Default | Description |
|---|---|---|---|---|
arr | T[] | false | undefined | 待排序数组 |
order | R | false | undefined | 排序的顺序 |
getter | string | ((item: T) => number) | false | undefined | 用于获取数值 |
Returns
| Type |
|---|
T[] |