该reverse()方法颠倒了数组中元素的顺序,但它改变了原始数组。我们举一个简单的例子来论证这个案例,
const originalArray = [1, 2, 3, 4, 5];
const newArray = originalArray.reverse();
console.log(newArray); // [ 5, 4, 3, 2, 1]
console.log(originalArray); // [ 5, 4, 3, 2, 1]
很少有解决方案不会改变原始数组。让我们来看看。
使用切片和反向方法: 在这种情况下,只需调用slice()数组上的方法来创建一个浅拷贝,然后reverse()调用该拷贝的方法。
const originalArray = [1, 2, 3, 4, 5]; const newArray = originalArray.slice().reverse(); //Slice an array gives a new copy console.log(originalArray); // [1, 2, 3, 4, 5] conso