js实现数组对象倒序
使用 Array.prototype.reverse()
最简单的方法是使用 JavaScript 内置的 reverse() 方法,它会直接修改原数组的顺序。
const arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // 输出: [5, 4, 3, 2, 1]
使用展开运算符和 reverse()
如果不想修改原数组,可以通过展开运算符 (...) 创建一个新数组后再调用 reverse()。
const arr = [1, 2, 3, 4, 5];
const reversedArr = [...arr].reverse();
console.log(reversedArr); // 输出: [5, 4, 3, 2, 1]
console.log(arr); // 原数组不变: [1, 2, 3, 4, 5]
手动实现倒序
通过循环或 reduce() 方法手动实现数组倒序。
const arr = [1, 2, 3, 4, 5];
const reversedArr = arr.reduce((acc, current) => [current, ...acc], []);
console.log(reversedArr); // 输出: [5, 4, 3, 2, 1]
对象数组倒序
如果数组元素是对象,同样可以使用 reverse() 方法。
const objArr = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Charlie' }
];
objArr.reverse();
console.log(objArr);
// 输出: [
// { id: 3, name: 'Charlie' },
// { id: 2, name: 'Bob' },
// { id: 1, name: 'Alice' }
// ]
按对象属性倒序
如果需要根据对象的某个属性值倒序排列,可以使用 sort() 方法自定义排序逻辑。
const objArr = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Charlie' }
];
const sortedArr = [...objArr].sort((a, b) => b.id - a.id);
console.log(sortedArr);
// 输出: [
// { id: 3, name: 'Charlie' },
// { id: 2, name: 'Bob' },
// { id: 1, name: 'Alice' }
// ]






