js翻转数组
时间: 2025-04-20 20:32:52 浏览: 24
### JavaScript 中翻转数组的方法
#### 使用 `reverse()` 方法
最简单的方式是使用内置的 `Array.prototype.reverse()` 方法来直接翻转整个数组。此方法会改变原始数组并将其元素顺序反转。
```javascript
let arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // 输出: [5, 4, 3, 2, 1]
```
这种方法适用于快速操作不需要保留原有数据的情况[^2]。
#### 手动实现双指针交换算法
对于更深入的理解以及练习编程技巧,可以手动编写代码来进行数组内元素的位置互换而不创建新的数组:
```javascript
function reverseArrayInPlace(arr) {
let leftIndex = 0;
let rightIndex = arr.length - 1;
while (leftIndex < rightIndex) {
// 交换两端的值
const temp = arr[leftIndex];
arr[leftIndex] = arr[rightIndex];
arr[rightIndex] = temp;
++leftIndex;
--rightIndex;
}
}
const myArr = ['a', 'b', 'c', 'd'];
reverseArrayInPlace(myArr);
console.log(myArr); // ["d", "c", "b", "a"]
```
这种方式不仅能够加深对基础概念的理解,而且有助于培养解决问题的能力[^5]。
#### 构建新数组存储结果
如果不希望影响到原来的数组,可以选择构建一个新的数组用于保存被翻转后的序列:
```javascript
function getReversedCopy(originalArray) {
var reversedCopy = [];
for (var i = originalArray.length - 1; i >= 0; i--) {
reversedCopy.push(originalArray[i]);
}
return reversedCopy;
}
let sourceArray = [7, 8, 9];
let newArray = getReversedCopy(sourceArray);
console.log(newArray); // [9, 8, 7]
console.log(sourceArray); // 原始数组保持不变 [7, 8, 9]
```
这段代码展示了如何遍历原数组并将各元素按相反顺序加入到另一个列表中去[^4]。
阅读全文
相关推荐


















