`I've made calls to six built-in APIs within a for loop, where each API call depends on the result of the previous one. I've attempted to execute these API calls synchronously; however, due to varying response times, achieving true synchronicity has proven challenging.
for (let i = 0; i < 2; i++) {
let promise1 = new Promise((resolve, reject) => {
resolve("Promise 1 ");
});
let promise2 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve("Promise 2");
}, 1000);
});
let promise3 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve("Promise 3");
}, 2000);
});
let promiseExecution = async () => {
for (let promise of [promise2, promise3, promise1]) {
// console.log('promise',promise)
try {
const message = promise;
console.log(message);
} catch (error) {
console.log(error.message);
}
}
};
promiseExecution();
}
Expected: promise 2 promise 3 promise 1 promise 2 promise 3 promise 1
async
keyword before thepromiseExecution
function is meaningless because the function executes synchronously.