Javascript 在承诺数组中,如何访问用于获取数据的ID

Javascript 在承诺数组中,如何访问用于获取数据的ID,javascript,Javascript,将输入数据与响应连接起来的承诺数组一个简单的循环应该可以满足您的需要: Promise.all(arrayOfIds.map((id)=> get(url); ))。然后((回答)=>{ /*这里要访问用于获取数据的各个id, 这样我就可以在相应的响应中添加一个额外的属性 */ 响应。forEach((响应,索引)=>{ response.id=阵列FIDS[索引]; }); //对回应做点什么 }); 如果您更喜欢手动循环而不是forEach: Promise.all(arrayOfIds.

将输入数据与响应连接起来的承诺数组

一个简单的循环应该可以满足您的需要:

Promise.all(arrayOfIds.map((id)=>
get(url);
))。然后((回答)=>{
/*这里要访问用于获取数据的各个id,
这样我就可以在相应的响应中添加一个额外的属性
*/
响应。forEach((响应,索引)=>{
response.id=阵列FIDS[索引];
});
//对回应做点什么
});
如果您更喜欢手动循环而不是forEach:

Promise.all(arrayOfIds.map((id)=>
get(url);
))。然后((回答)=>{
/*这里要访问用于获取数据的各个id,
这样我就可以在相应的响应中添加一个额外的属性
*/
for(设i=0;i
其工作原理是
Promise.all
保证解析值的顺序与传递给它的承诺数组的顺序相同,在您的情况下,这是
map()
调用的结果,该调用保留了顺序


因此,所有东西最终都应该排成一行。

一个简单的循环应该可以满足您的需求:

Promise.all(arrayOfIds.map((id)=>
get(url);
))。然后((回答)=>{
/*这里要访问用于获取数据的各个id,
这样我就可以在相应的响应中添加一个额外的属性
*/
响应。forEach((响应,索引)=>{
response.id=阵列FIDS[索引];
});
//对回应做点什么
});
如果您更喜欢手动循环而不是forEach

Promise.all(arrayOfIds.map((id)=>
get(url);
))。然后((回答)=>{
/*这里要访问用于获取数据的各个id,
这样我就可以在相应的响应中添加一个额外的属性
*/
for(设i=0;i
其工作原理是
Promise.all
保证解析值的顺序与传递给它的承诺数组的顺序相同,在您的情况下,这是
map()
调用的结果,该调用保留了顺序


因此,所有内容都应该排在最后。

您还可以返回一个
承诺。all
,其中传递的数组中的一项是id,另一项是
axios。get
承诺:

 Promise.all(arrayOfIds.map((id) => 
   axios.get(url);
   )).then((responses) => {
        /* here want to access the respective id used for fetching data, 
        so that I can add an extra property in to the corresponding response
        */
   });

您还可以返回一个
Promise.all
,其中传递的数组中的一项是id,另一项是
axios.get
Promise:

 Promise.all(arrayOfIds.map((id) => 
   axios.get(url);
   )).then((responses) => {
        /* here want to access the respective id used for fetching data, 
        so that I can add an extra property in to the corresponding response
        */
   });