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


Discussion (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 Author

Thank you for the suggestion.

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