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

使用Spotify Web API时,如何从链式对象中解构同名属性为不同变量?

解决链式对象解构的变量重复声明问题

你遇到的核心问题是重复声明了同一个变量名,而且没有给两个不同路径的new_collection_listeners值分配不同的变量名。我们可以通过解构时的别名语法来解决这个问题:

方案1:分两次解构并指定别名

// 将 current 路径的 new_collection_listeners 赋值给 currentListeners
const { current: { metrics: { new_collection_listeners: currentListeners }}} = track.spotify;
// 将 previous 路径的 new_collection_listeners 赋值给 previousListeners
const { previous: { metrics: { new_collection_listeners: previousListeners }}} = track.spotify;

方案2:一次性嵌套解构并指定别名

如果想更简洁,可以在同一行完成解构:

const {
  current: { metrics: { new_collection_listeners: currentListeners }},
  previous: { metrics: { new_collection_listeners: previousListeners }}
} = track.spotify;

原理说明

这里的冒号是ES6解构的别名语法,格式为:原属性名: 新变量名。它的作用是把对象中原属性名对应的值,赋值给新变量名。这样我们就能把两个相同属性名但不同路径的值,分别存到currentListeners和previousListeners这两个不重名的变量里,既避免了重复声明的错误,也能正确获取到你需要的两个数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:53:44