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

如何提取JSON中所有键名为name的属性值并生成数组?

解决方案

你可以通过以下几种方式实现需求:

方法1:使用Object.values() + map(推荐,兼容性好)

通过Object.values()获取profile节点下所有属性的值(即各个动态ID对应的用户对象),再通过map遍历提取所有name属性值即可,代码如下:

// 假设你的完整JSON数据存在data变量中
const profile = data.profile;
const nameList = Object.values(profile).map(item => item.name);

针对你给出的示例结构,最终nameList的结果为["siddharth", "ram", "maix"]。

方法2:使用Object.keys()遍历

如果需要兼容更早期的JS运行环境,也可以先获取所有动态键名后遍历取值:

const profile = data.profile;
const nameList = [];
for (const key of Object.keys(profile)) {
  nameList.push(profile[key].name);
}

异常兼容处理

如果部分动态键对应的对象可能不存在name属性,可以加过滤逻辑避免得到undefined值:

const nameList = Object.values(profile)
  .filter(item => item && typeof item.name !== 'undefined')
  .map(item => item.name);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 02:45:04