0
var arr = ["node.js", "Java", "C#"];
var newArr = [];
let promise = new Promise((resolve, reject) => {
for(let i = 0; i < arr.length; i++) {
setTimeout(() => {
newArr.push(arr[i])
resolve(newArr);
}, 1000);
}
});
promise
.then(result => {
alert(result);
}
);
現在,第一循環後警報數據。如何在承諾完成後通過整個循環顯示來自異步操作的數據?
期望的行爲:在異步模式下向newArr添加數據,並在循環結束後顯示它。
那麼你只能解決一次.....所以,你將不得不等待,直到所有的超時完成.. .. – epascarello
'''Promise.all'''就是你想要的 – Wainage
@epascarello你能告訴我怎麼做嗎? –