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

如何向对象数组中添加新元素?(含JSON实操示例)

问题说明

我有一个包含agents数组的对象,该数组初始无有效元素,已添加空对象使其变为"agents": [{}],需要将指定的agent元素添加到这个agents数组中,并得到符合预期的最终对象。

原始对象

{
    "refURL": "/unifiedconfig/config/agentteam/5020",
    "changeStamp": 18,
    "agentCount": 0,
    "description": "Cumulus All Team",
    "name": "CumulusAll",
    "peripheral": {
        "id": 5000,
        "name": "CUCM_PG_1"
    },
    "peripheralId": 5000,
    "supervisorCount": 0,
    "agents": [
        {}
    ]
}

待添加的Agent元素

{
    "agent": [
        {
            "refURL": "/unifiedconfig/config/agent/5101",
            "agentId": "1300",
            "firstName": "Sammy",
            "lastName": "Jackson",
            "userName": "cgjackson"
        },
        {
            "refURL": "/unifiedconfig/config/agent/5106",
            "agentId": "1305",
            "firstName": "Angel",
            "lastName": "Jolie",
            "userName": "cgjolie"
        },
        {
            "refURL": "/unifiedconfig/config/agent/5109",
            "agentId": "1308",
            "firstName": "Steve",
            "lastName": "O",
            "userName": "cgsteveo"
        }
    ]
}

期望的最终输出

{
    "refURL": "/unifiedconfig/config/agentteam/5016",
    "changeStamp": 201,
    "agentCount": 3,
    "description": "Cumulus Finance Team",
    "name": "CumulusFinance",
    "peripheral": {
        "id": 5000,
        "name": "CUCM_PG_1"
    },
    "peripheralId": 5000,
    "supervisorCount": 1,
    "agents": [
        {
            "agent": [
                {
                    "refURL": "/unifiedconfig/config/agent/5101",
                    "agentId": "1300",
                    "firstName": "Sammy",
                    "lastName": "Jackson",
                    "userName": "cgjackson"
                },
                {
                    "refURL": "/unifiedconfig/config/agent/5106",
                    "agentId": "1305",
                    "firstName": "Angel",
                    "lastName": "Jolie",
                    "userName": "cgjolie"
                },
                {
                    "refURL": "/unifiedconfig/config/agent/5109",
                    "agentId": "1308",
                    "firstName": "Steve",
                    "lastName": "O",
                    "userName": "cgsteveo"
                }
            ]
        }
    ],
    "supervisors": [
        {
            "supervisor": [
                {
                    "refURL": "/unifiedconfig/config/agent/5174",
                    "agentId": "1082",
                    "firstName": "Rick",
                    "lastName": "Barrows",
                    "userName": "rbarrows@dcloud.cisco.com"
                }
            ]
        }
    ]
}

实现方法

以JavaScript为例,直接操作对象属性即可完成需求:

// 原始团队对象
const team = {
    "refURL": "/unifiedconfig/config/agentteam/5020",
    "changeStamp": 18,
    "agentCount": 0,
    "description": "Cumulus All Team",
    "name": "CumulusAll",
    "peripheral": {
        "id": 5000,
        "name": "CUCM_PG_1"
    },
    "peripheralId": 5000,
    "supervisorCount": 0,
    "agents": [{}]
};

// 待插入的agent数据
const agentData = {
    "agent": [
        {
            "refURL": "/unifiedconfig/config/agent/5101",
            "agentId": "1300",
            "firstName": "Sammy",
            "lastName": "Jackson",
            "userName": "cgjackson"
        },
        {
            "refURL": "/unifiedconfig/config/agent/5106",
            "agentId": "1305",
            "firstName": "Angel",
            "lastName": "Jolie",
            "userName": "cgjolie"
        },
        {
            "refURL": "/unifiedconfig/config/agent/5109",
            "agentId": "1308",
            "firstName": "Steve",
            "lastName": "O",
            "userName": "cgsteveo"
        }
    ]
};

// 将agent数据替换agents数组中的空对象
team.agents[0] = agentData;
// 更新agentCount为实际agent数量
team.agentCount = agentData.agent.length;

// 按需修改其他字段
team.refURL = "/unifiedconfig/config/agentteam/5016";
team.changeStamp = 201;
team.description = "Cumulus Finance Team";
team.name = "CumulusFinance";

// 添加supervisors相关内容
team.supervisorCount = 1;
team.supervisors = [
    {
        "supervisor": [
            {
                "refURL": "/unifiedconfig/config/agent/5174",
                "agentId": "1082",
                "firstName": "Rick",
                "lastName": "Barrows",
                "userName": "rbarrows@dcloud.cisco.com"
            }
        ]
    }
];

// 输出结果
console.log(JSON.stringify(team, null, 2));

内容的提问来源于stack exchange,提问作者Ganesh Putta

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 08:45:46