У JavaScript уже есть метод reverse () в Array, поэтому вам не нужно этого делать!
Представьте, что у вас есть массив ниже:
var arr = [1, 2, 3, 4, 5];
Теперь просто просто выполните это:
arr.reverse();
, и вы получите это как результат:
[5, 4, 3, 2, 1];
Но это в основном изменит исходный массив, вы можете написать функцию и использовать ее для возврата новый массив вместо этого, что-то вроде этого:
function reverse(arr) {
var i = arr.length, reversed = [];
while(i) {
i--;
reversed.push(arr[i]);
}
return reversed;
}
Или просто редактирование встроенных методов JavaScript для Array следующим образом:
function reverse(arr) {
return arr.slice().reverse();
}
, и вы можете вызвать его следующим образом:
reverse(arr); //return [5, 4, 3, 2, 1];
Как уже упоминалось, основное различие заключается во втором способе, вы не касаетесь оригинального массива ...