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

如何解构带字符串键名的对象以获取releases的首个键名?

解决方法:获取对象第一个键名的正确方式

你之前的写法行不通,原因有两个:

  1. 对象解构的核心是匹配对象的属性值,不是直接提取键名;
  2. 解构模式里不能直接用Object.keys()这种动态表达式作为属性名来匹配。

要获取releases的第一个键名,最直接的方式是利用Object.keys()返回键名数组的特性,直接解构这个数组:

const game = {
    title: "YS",
    developer: "Falcom",
    releases: {
      "Oath In Felghana": ["USA", "Japan"],
      "Ark Of Napishtim": {
        US: "20 USD",
        JAP: "10 USD",
      },
      Origin: "30 USD",
    },
};

// 直接解构键名数组的第一个元素
const [keyName] = Object.keys(game.releases);
console.log(keyName); // 输出 "Oath In Felghana"

补充说明

  • ES2015及以后,对象的字符串键会按照插入顺序排列,所以Object.keys()返回的数组顺序和对象里键的定义顺序一致;
  • 如果非要用对象解构的思路(其实没必要绕路),可以先把键名存到变量,再通过计算属性匹配,但这是拿值的操作,和你要键名的需求无关,所以不推荐。

内容的提问来源于stack exchange,提问作者B-M Amine

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 20:45:51