I am looking for a way to get my array to create a new array, with numbers in reverse without using the reverse method.
e.g.
let numbers = [1, 2, 3]
console.log(reverse(numbers))
should return "[3, 2, 1]".
Thanks
3 Answers 3
Here. A quick solution with map. returns you new array
let numbers = [1, 2, 3]
let result = numbers.map((el, i, arr) => arr[arr.length - 1 - i])
console.log(result)
answered Oct 12, 2020 at 11:06
Ilijanovic
15k4 gold badges29 silver badges63 bronze badges
Sign up to request clarification or add additional context in comments.
Comments
Here is a quick way using a standard for loop
const numbers = [1, 2, 3]
const reverse = [];
for (let i = numbers.length - 1; i >= 0; i--) {
reverse.push(numbers[i])
}
console.log(reverse);
Comments
Short and simple:
let numbers = [1, 2, 3, 4];
const reverse = (array) => array.map(array.pop, [...array]);
console.log(reverse(numbers));
Comments
lang-js
const numbers = [1, 2, 3, 4, 5, 6]; const result = numbers.reduce((a, b) => [b].concat(a), []);