ZetCode

JavaScript reverse 方法

最后修改于 2025 年 4 月 4 日

在本文中,我们将展示如何使用 JavaScript 中的 reverse 方法反转数组。

数组反转

数组反转是改变数组中元素顺序的操作。reverse 方法原地反转数组中元素的顺序。第一个元素变为最后一个,最后一个元素变为第一个。

该方法修改原始数组,并返回对同一数组的引用。与某些数组方法不同,reverse 不会创建新数组,而是更改现有数组。

当您需要以相反的顺序处理元素或显示从最新到最旧的数据时,reverse 方法很有用。它适用于所有类型的数组元素,包括数字、字符串和对象。

基本反转示例

以下示例演示了 reverse 方法的基本用法。

main.js
const fruits = ['apple', 'banana', 'cherry'];
fruits.reverse();

console.log(fruits);

我们创建一个水果数组并反转其顺序。原始数组被直接修改。第一个元素变为最后一个,反之亦然。

$ node main.js
[ 'cherry', 'banana', 'apple' ]

反转数字数组

reverse 方法适用于包含任何数据类型的数组。

main.js
const numbers = [1, 2, 3, 4, 5];
numbers.reverse();

console.log(numbers);

我们反转一个数字数组。该方法的工作方式相同,与元素类型无关。原始数组被原地修改。

$ node main.js
[ 5, 4, 3, 2, 1 ]

反转并创建一个新数组

为了反转数组而不修改原始数组,我们可以先创建一个副本。

main.js
const original = ['a', 'b', 'c'];
const reversed = [...original].reverse();

console.log(original);
console.log(reversed);

我们使用扩展运算符创建数组的浅拷贝,然后再进行反转。这保留了原始数组,同时为我们提供了一个反转的版本。

$ node main.js
[ 'a', 'b', 'c' ]
[ 'c', 'b', 'a' ]

使用 reverse 反转字符串

我们可以通过转换为数组,将 reverse 与字符串操作一起使用。

main.js
const str = 'hello';
const reversedStr = str.split('').reverse().join('');

console.log(reversedStr);

我们将字符串拆分成字符数组,反转数组,然后将其重新连接成字符串。这是 JS 中字符串反转的常用技术。

$ node main.js
olleh

反转嵌套数组

reverse 方法仅反转顶层数组元素。

main.js
const nested = [[1, 2], [3, 4], [5, 6]];
nested.reverse();

console.log(nested);

当反转包含嵌套数组的数组时,嵌套数组本身会被反转为元素。它们的内部顺序保持不变。

$ node main.js
[ [ 5, 6 ], [ 3, 4 ], [ 1, 2 ] ]

来源

数组 reverse - 语言参考

在本文中,我们演示了如何使用 reverse() 方法来反转 JavaScript 中的数组。

作者

我的名字是 Jan Bodnar,我是一位充满激情的程序员,拥有丰富的编程经验。自 2007 年以来,我一直在撰写编程文章。迄今为止,我已撰写了 1,400 多篇文章和 8 本电子书。 我拥有超过十年的编程教学经验。

列出 所有 JS 数组函数。