Aller au contenu principal

rangeRight()

rangeRight(end): number[]

rangeRight(start, end, step?): number[]

Creates an array of numbers progressing from start up to, but not including, end, in descending order.

DEPRECATED

Use range().reverse() directly instead.


Parameters

Overload 1:

end: number

The end of the range.

Overload 2:

start: number

The start of the range.

end: number

The end of the range.

step?: number

The value to increment or decrement by. Defaults to 1.


Returns: number[]

The range of numbers in reverse order.


See Also

range


Since

2.0.0


Also known as

rangeRight (Lodash, es-toolkit) · ❌ (Remeda, Radashi, Ramda, Effect, Modern Dash, Antfu)


Example

// ❌ Deprecated approach
rangeRight(4); // => [3, 2, 1, 0]
rangeRight(1, 5); // => [4, 3, 2, 1]
rangeRight(0, 20, 5); // => [15, 10, 5, 0]

// ✅ Recommended approach
range(4).reverse(); // => [3, 2, 1, 0]
range(1, 5).reverse(); // => [4, 3, 2, 1]
range(0, 20, 5).reverse(); // => [15, 10, 5, 0]

How it works?

Creates a range of numbers from end to start. Deprecated: Use range() with reverse, or generate manually.

Native Equivalent

// ❌ rangeRight(n)
// ✅ [...Array(n).keys()].reverse()
// ✅ Array.from({length: n}, (_, i) => n - 1 - i)

Use Cases

Generate descending range 📌

Create array of numbers in descending order.

import { range } from '@pithos/arkhe';
range(4).reverse(); // [3, 2, 1, 0]

Countdown sequence

Generate countdown numbers.

import { range } from '@pithos/arkhe';
const countdown = range(1, 11).reverse(); // [10, 9, 8, ..., 1]