在JavaScript中处理数组时,你可能需要对它进行反转。反转数组将使最后一项成为第一项,倒数第二项成为第二项,以此类推。本教程展示了如何在JavaScript中反转数组以及需要注意的副作用。
反转数组并突变原数
JavaScript为数组提供了一个reverse 方法。你可以直接使用array.reverse() 方法,并检索出反转的数组。这里要注意:reverse 方法会改变原始数组:
const numbers = [1, 2, 3]
numbers.reverse()
console.log(numbers)
// [3, 2, 1]
在不改变原始数组的情况下反转数组
当在JavaScript中反转一个数组时,你可能想保持原数组的 "原样"。你可以使用传播操作符、concat 或slice 方法复制一个现有的数组。这三种方法都保留了原始数组的顺序,只对副本进行变异:
const numbers = [1, 2, 3]
const reversed = [].concat(numbers).reverse()
// or
const reversed = numbers.slice().reverse()
// or
const reversed = [...numbers].reverse()
我们通常使用传播操作符 ([...numbers]) 来创建一个给定数组的副本。这是团队中常见的方法,因为我们知道传播操作符的作用,以及为什么我们要把一个数组传播到另一个数组中。
就这样吧!享受反转数组的乐趣吧!