Skip to content

Commit 79f0d79

Browse files
feat(arrays): Reverse
Add reverse function for arrays. re #4
1 parent fc70cb0 commit 79f0d79

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

src/arrays.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,10 @@ export function sortByDescending<T, Key>(a: any, b?: any): any {
259259
return partial ? exec : exec(a)
260260
}
261261

262+
export function reverse<T>(source: T[]): T[] {
263+
return Array.from(source).reverse()
264+
}
265+
262266
export function sumBy<T>(selector: (item: T) => number): (source: T[]) => number
263267
export function sumBy<T>(source: T[], selector: (item: T) => number): number
264268
export function sumBy<T>(a: any, b?: any): any {

test/arrays.test.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,16 @@ describe('sortByDescending', () => {
291291
).toEqual([{ name: 'amy', age: 21 }, { name: 'cat', age: 18 }, { name: 'bob', age: 2 }])
292292
})
293293
})
294+
295+
describe('reverse', () => {
296+
test('empty', () => {
297+
expect(Arrays.reverse([])).toEqual([])
298+
})
299+
test('reversal', () => {
300+
expect(Arrays.reverse([8, 3, 5])).toEqual([5, 3, 8])
301+
})
302+
})
303+
294304
describe('sumBy', () => {
295305
test('piping', () => {
296306
expect(

0 commit comments

Comments
 (0)