You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript中反转嵌套对象内的对象数组?

如何反转对象内指定数组并保持原结构?

之前处理纯对象数组时,我们可以直接用reverse()方法反转:

const input = [{"test":1},{"test":2},{"test":3}]
const result = input.reverse();
// 输出:[{"test":3},{"test":2},{"test":1}]

现在输入结构变成了包含数组的对象:

const newInput = { releases: [{"test":1},{"test":2},{"test":3}] }

想要保持对象结构不变,仅反转其中的releases数组,可以用两种方式实现:


方法1:直接修改原对象

如果允许修改原newInput对象,直接调用数组的reverse()方法即可:

const newInput = { releases: [{"test":1},{"test":2},{"test":3}] };
newInput.releases.reverse();
// 此时newInput的值为:{ releases: [{"test":3},{"test":2},{"test":1}] }

注意:reverse()是数组的原地修改方法,执行后原newInput.releases数组会直接被反转。


方法2:创建新对象(不修改原数据)

如果不想改动原对象,可通过复制数组和对象的方式,生成一个新的结果对象:

const newInput = { releases: [{"test":1},{"test":2},{"test":3}] };
const reversedResult = {
  ...newInput, // 复制原对象的其他属性
  releases: [...newInput.releases].reverse() // 复制数组后再反转,不影响原数组
};
// reversedResult即为目标结构,原newInput保持不变

内容的提问来源于stack exchange,提问作者Aren Trot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 14:03:14