js实现数组对象倒序
使用 Array.prototype.reverse() 方法
reverse() 是 JavaScript 数组的原生方法,可直接修改原数组并返回倒序后的结果。适用于简单数组或对象数组。

const arr = [{id: 1}, {id: 2}, {id: 3}];
arr.reverse();
console.log(arr); // 输出: [{id: 3}, {id: 2}, {id: 1}]
使用展开运算符创建新数组
若需保留原数组不变,可通过展开运算符 ... 创建新数组后再倒序。

const original = [{name: 'A'}, {name: 'B'}, {name: 'C'}];
const reversed = [...original].reverse();
console.log(reversed); // 输出: [{name: 'C'}, {name: 'B'}, {name: 'A'}]
基于 sort() 自定义排序
通过 sort() 结合比较函数实现倒序,适用于需按特定属性排序的场景。
const data = [{value: 10}, {value: 5}, {value: 20}];
data.sort((a, b) => b.value - a.value);
console.log(data); // 输出: [{value: 20}, {value: 10}, {value: 5}]
使用 reduce() 实现倒序
通过 reduce() 从后向前遍历数组生成新数组,适合函数式编程场景。
const items = [{id: 'X'}, {id: 'Y'}, {id: 'Z'}];
const reversedItems = items.reduce((acc, item) => [item, ...acc], []);
console.log(reversedItems); // 输出: [{id: 'Z'}, {id: 'Y'}, {id: 'X'}]
注意事项
reverse()会直接修改原数组,若需不可变操作需先复制数组。- 对象数组倒序时,确保引用类型数据的处理符合预期(深拷贝或浅拷贝)。






