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

如何使用push方法向数组添加元素并解决数组输出格式不符问题

解决方案

问题根因

你当前的写法会将otherArray和{title: 'Hello'}作为两个独立的元素推入myList数组,最终数组长度为2,对应你现在得到的包含两个独立对象的输出结果。你期望的是将两个对象的属性合并为一个对象后,作为数组的唯一元素存在。

适配代码

如果otherArray是包含你示例中单个对象的数组,可通过对象合并后再推入数组实现需求:

写法1(扩展运算符,推荐)

const myList = [];
myList.push({...otherArray[0], title: 'Hello'});

写法2(兼容低运行环境)

如果环境不支持ES6扩展运算符,可使用Object.assign实现合并:

const myList = [];
myList.push(Object.assign({}, otherArray[0], {title: 'Hello'}));

如果otherArray本身就是单个对象而非数组,直接去掉上述代码中的[0]即可。

额外场景参考

如果你后续需要将otherArray的所有元素展开追加到myList,同时单独追加新对象(不需要合并属性),可以用扩展运算符展开数组参数:

const myList = [];
myList.push(...otherArray, {title: 'Hello'});

该写法得到的是多元素数组,和你本次的期望输出不符,仅作扩展参考。

内容的提问来源于stack exchange,提问作者Jerry Seigle

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 23:54:01