跳到主要内容

JavaScript 数组 reverse() 方法

reverse() 方法用于将数组以相反的顺序返回。

示例

let numbers = [1, 2, 3, 4, 5];

// 反转 numbers 数组
let reversedArray = numbers.reverse();

console.log(reversedArray);

// 输出:[ 5, 4, 3, 2, 1 ]

reverse() 语法

reverse() 方法的语法为:

arr.reverse();

这里,arr 是一个数组。

reverse() 参数

reverse() 方法不接受任何参数。

reverse() 返回值

  • 返回元素顺序被反转的数组。

注意: reverse() 方法会就地反转元素的顺序,即它会更改原始数组。

示例 1:使用 reverse() 方法

let languages = ["JavaScript", "Python", "C++", "Java", "Lua"];

// 反转 languages 数组的顺序
let reversedArray = languages.reverse();

console.log("反转后的数组:", reversedArray);

// 修改了原始数组
console.log("原始数组:", languages);

输出

反转后的数组:[ 'Lua', 'Java', 'C++', 'Python', 'JavaScript' ]
原始数组:[ 'Lua', 'Java', 'C++', 'Python', 'JavaScript' ]

在上面的示例中,我们使用了 reverse() 方法来反转 languages 数组。

languages.reverse() 反转了数组中每个元素的顺序并返回反转后的数组。

由于该方法更改了原始数组,因此 languages 和 reversedArray 保存了相同的值。

示例 2:结合扩展运算符(...)使用 reverse() 方法

在示例 1 中,我们看到 reverse() 方法如何修改原始数组。

但是,如果我们在数组中结合使用扩展运算符(...)和 reverse() 方法,它就不会修改原始数组。例如:

let languages = ["JavaScript", "Python", "C++", "Java", "Lua"];

// 使用扩展运算符来反转数组
let reversedArray = [...languages].reverse();

console.log("反转后的数组:", reversedArray);

// 不会修改原始数组
console.log("原始数组:", languages);

输出

反转后的数组:[ 'Lua', 'Java', 'C++', 'Python', 'JavaScript' ]
原始数组:[ 'JavaScript', 'Python', 'C++', 'Java', 'Lua' ]

推荐阅读: JavaScript Array sort()