Al ser javascript
lo que estas ejecutando, dependera mucho del volumen de datos en el array
y el equipo cliente
que se este usando o el equipo servidor
(por que si javascript ahora tambien se puede ejecutar en el backend)
Una forma para mi eficiente (desde el punto de vista del codigo y su organizacion) seria:
let arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // [5, 4, 3, 2, 1]
Nota: aqui estamos implementando el metodo .reverse()
En tal caso que no queramos alterar el array original tambien podemos hacer algo asi:
let arr = [1, 2, 3, 4, 5];
let reversedArr = [...arr].reverse();
console.log(reversedArr); // [5, 4, 3, 2, 1]
console.log(arr); // [1, 2, 3, 4, 5] (el array original no se modifica)