Skip to content

How to reverse a JavaScript array

I had the need to reverse a JavaScript array, and here is what I did.

Given an array list:

const list = [1, 2, 3, 4, 5]

The easiest and most intuitive way is to call the reverse() method of an array.

This method alters the original array, so I can declare list as a const, because I don’t need to reassign the result of calling list.reverse() to it:

const list = [1, 2, 3, 4, 5]
list.reverse()

//list is [ 5, 4, 3, 2, 1 ]

You can pair this method with the spread operator to first copy the original array, and then reversing it, so the original array is left untouched:

const list = [1, 2, 3, 4, 5]
const reversedList = [...list].reverse()

//list is [ 1, 2, 3, 4, 5 ]
//reversedList is [ 5, 4, 3, 2, 1 ]

Another way is to use slice() without passing arguments:

const list = [1, 2, 3, 4, 5]
const reversedList = list.slice().reverse()

//list is [ 1, 2, 3, 4, 5 ]
//reversedList is [ 5, 4, 3, 2, 1 ]

but I find the spread operator more intuitive than slice().


→ Get my JavaScript Beginner's Handbook

→ I wrote 17 books to help you become a better developer:

  • C Handbook
  • Command Line Handbook
  • CSS Handbook
  • Express Handbook
  • Git Cheat Sheet
  • Go Handbook
  • HTML Handbook
  • JS Handbook
  • Laravel Handbook
  • Next.js Handbook
  • Node.js Handbook
  • PHP Handbook
  • Python Handbook
  • React Handbook
  • SQL Handbook
  • Svelte Handbook
  • Swift Handbook
...download them all now!

Also, JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025

Bootcamp 2025

Join the waiting list