DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Cover image for 1 line of code: How to sort an array by descending order
martin krause
martin krause

Posted on

1 line of code: How to sort an array by descending order

const sortDesc = arr =>  [...arr].sort((a, b) => a - b).reverse();
Enter fullscreen mode Exit fullscreen mode

Returns a new array sorted by ascending (Numbers).
Beware of JavaScript's Automatic Type Conversion if your Array contains something else than Numbers.


Optimised Code

const sortDesc = arr =>  [...arr].sort((a, b) => b - a);
Enter fullscreen mode Exit fullscreen mode

The repository & npm package

You can find the all the utility functions from this series at github.com/martinkr/onelinecode
The library is also published to npm as @onelinecode for your convenience.

The code and the npm package will be updated every time I publish a new article.


Follow me on Twitter: @martinkr and consider to buy me a coffee

Photo by zoo_monkey on Unsplash


Top comments (2)

Collapse
 
jonrandy profile image
Jon Randy πŸŽ–οΈ

Errr, why sort it one way, then reverse it? Why not just:

const sortDesc = arr =>  [...arr].sort((a, b) => b - a)
Enter fullscreen mode Exit fullscreen mode
Collapse
 
martinkr profile image
martin krause

Thank you for the suggestion.

It is a nice improvement. I will update the article and code!

Let's Get Hacking

Join the DEV x Linode Hackathon 2022 and use your ingenuity and creativity to build using Linode.

β†’ Join the Hackathon <-