![](/img/trans.png)
[英]Async-await 'Promise {<pending>} with Array.prototype.map
[英]Array.prototype.map can not be used for Promise?
我有一個值數組,我想創建一個promise數組以對此進行並行調用。 但是為什么地圖功能不起作用?
let myArray = [1,2,3];
myArray.map((n) => {
return new Promise((resolve, reject) => {
resolve(n);
});
});
console.log(myArray); // [1,2,3]
但是,當我嘗試將Promises推送到數組時,可以按預期工作。
let myArray = [1,2,3];
let pArray = []
for(let n of myArray){
pArray.push(new Promise((resolve, reject) => {
resolve(i);
}));
}
console.log(pArray); // [Promise,Promise,Promise]
這樣做是因為map
不會修改數組:
let myArray = [1,2,3];
let promiseArray = myArray.map((n) => {
return new Promise((resolve, reject) => {
resolve(n);
});
});
console.log(promiseArray);
您需要分配map
的結果。
let myArray = [1, 2, 3]; let pArray = myArray.map((n) => { return new Promise((resolve, reject) => { resolve(n); }); }); console.log(pArray); // [Promise,Promise,Promise]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.