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

如何基于指定Key用ES6单行代码获取JavaScript嵌套对象对应值

实现方案

最简实现(保留原对象所有属性)

JavaScript 对象本身支持按键直接索引,不需要任何循环,单行代码即可实现:

const target = data[connector.source];

匹配预期输出(排除冗余的数字键属性)

如果需要和你给出的预期输出完全一致,去掉嵌套的"2"属性,可以用ES6解构+立即执行函数实现,无循环单行写法:

const target = (({ id, name, data }) => ({ id, name, data }))(data[connector.source]);

原理说明

  • 先通过data[connector.source]拿到对应键的完整对象
  • 用参数解构只提取需要的id、name、data三个属性
  • 直接返回由这三个属性组成的新对象,无冗余内容

通用场景实现(自动排除所有数字键属性)

如果后续会新增更多数字键的嵌套对象,不想手动罗列要提取的字段,可以用Object.fromEntries+filter的单行实现:

const target = Object.fromEntries(Object.entries(data[connector.source]).filter(([key]) => isNaN(Number(key))));

这个写法会自动过滤掉所有键为数字的属性,只保留非数字键的字段,适用性更广。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 00:27:03