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

动态数组对象分组并生成指定结构对象的实现方案咨询

解决方案

你可以通过遍历数组、分割字符串并分类收集数据来实现需求,代码示例如下:

var object = [
    "70669",
    "70669|9436",
    "70669|8353",
    "70669|8914",
    "70669|9522",
    "70669|8422",
    "70669|9639"
];

// 初始化符合目标结构的结果容器
const result = [{
    stdSizeCode: [],
    productHierSk: null
}];

// 遍历处理每个元素
object.forEach(item => {
    const parts = item.split('|');
    // 处理单独的层级编码
    if (parts.length === 1) {
        result[0].productHierSk = Number(parts[0]);
    } else {
        // 提取尺寸码并转为数字存入数组
        result[0].stdSizeCode.push(Number(parts[1]));
    }
});

console.log(result);

补充说明:

如果输入数组中可能存在多个单独的层级编码(比如不止一个"70669"),可以添加判断避免重复赋值覆盖:

object.forEach(item => {
    const parts = item.split('|');
    if (parts.length === 1) {
        // 仅当层级编码未设置时赋值
        if (result[0].productHierSk === null) {
            result[0].productHierSk = Number(parts[0]);
        }
    } else {
        result[0].stdSizeCode.push(Number(parts[1]));
    }
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 22:45:29