如何修改在JavaScript/TypeScript中存储为对象属性的数据变量?

iyzzxitl  于 2023-04-04  发布在  Java
关注(0)|答案(2)|浏览(155)

我有下面的代码,我重组的简单性和可重用性。我的要求很简单:我有一个空数组列表,Map到某些键(对应于一组唯一的ID)。
为了将数据存储到这n个数组中,我有一个公共API调用,其请求有效负载将包含引用数据的id,然后在接收到响应时,我希望查找对象内部与ID对应的变量名称,并在继续下一次迭代value/ID之前将值存储在那里
例如:如果id的值为1,则请求负载的id为1,相应的响应数据应保存到mapped[1]的值中,即fruits...(上面给出的名为“fruits”的数组,而不是对象值,我该怎么做?)

let fruits=[]
let vegetables=[]
let nuts=[] ......etc upto n number of entries

let mapped={1:fruits,2:vegetables,3:nuts,.......(other 'n' entries) }

for(let i=1;i<=15;i++){
    let payload={id:i}
   this.apiService.fetchReferenceData(payload).then((response)=>{
         mapped[i]=response.data  //the value I receive here needs to be stored into the array matching the name of the object value
    })

  }
}
qjp7pelc

qjp7pelc1#

杰·斯瓦米安瑞恩!
其他一切看起来都很好...也许你要找的是...

mapped[i].push(response.data)

而不是

mapped[i]=response.data
xuo3flqw

xuo3flqw2#

你可以使用一个数组方法,比如push,将值存储在数组中。
因此,use可以使用mapped[i].push(response.data),而不是使用-mapped[i]=response.data
P.S:根据您提供的代码,我假设您将每个数组(水果,蔬菜等)的引用存储在mapped对象中。

相关问题