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

如何从JSON对象数组中合并多对象属性生成新的单元素数组

实现方案

核心逻辑

  • 先明确有效属性值判定规则:排除undefined、null、空字符串""、纯空格字符串
  • 遍历原数组所有对象,逐个校验属性值有效性,将有效值累积合并到同一个结果对象中
  • 最终将合并完成的结果对象封装为新数组即可

代码实现(JavaScript)

// 原数组(已修正语法问题)
const a = [
    {
        "first_name": "Andrew",
        "last_name": " ",
        "job": "actor"
    },
    {
        "first_name": "Andrew",
        "last_name": "Petrov",
        "job": "",
        "contry": "Russia"
    },
    {
        "first_name": "Andrew",
        "last_name": "Petrov",
        "contry": "Russia"
    }
]

// 有效值校验函数
const isValidValue = val => {
    if (val === undefined || val === null) return false
    if (typeof val === 'string') return val.trim() !== ''
    return true
}

// 合并属性
const merged = {}
a.forEach(obj => {
    Object.entries(obj).forEach(([key, val]) => {
        if (isValidValue(val)) merged[key] = val
    })
})

// 封装为目标数组
const result = [merged]

输出结果

执行上述代码后result的值即为预期输出:

[
    {
        "first_name": "Andrew",
        "last_name": "Petrov",
        "job": "actor",
        "contry": "Russia"
    }
]

如果需要调整有效值判定规则,直接修改isValidValue函数的逻辑即可适配不同场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 14:45:08