js实现reserve
在JavaScript中实现数组反转可以通过多种方法完成。以下是几种常见的实现方式:
使用原生reverse方法
JavaScript数组自带reverse()方法,可以直接调用:
const arr = [1, 2, 3, 4];
const reversed = arr.reverse(); // [4, 3, 2, 1]
手动实现反转
通过循环交换元素位置实现反转:
function reverseArray(arr) {
let left = 0;
let right = arr.length - 1;
while (left < right) {
[arr[left], arr[right]] = [arr[right], arr[left]];
left++;
right--;
}
return arr;
}
使用reduce方法
利用reduce实现数组反转:
const reversed = arr.reduce((acc, current) => [current, ...acc], []);
使用展开运算符和slice
结合展开运算符和slice实现:
const reversed = [...arr].slice().reverse();
递归实现
递归方式反转数组:

function reverseRecursive(arr, start = 0, end = arr.length - 1) {
if (start >= end) return arr;
[arr[start], arr[end]] = [arr[end], arr[start]];
return reverseRecursive(arr, start + 1, end - 1);
}
每种方法都有其适用场景,原生reverse方法性能最佳但会修改原数组,手动实现可以控制是否修改原数组,递归方式适合学习算法思想但可能有栈溢出风险。






