function pause500ms() {
return new Promise( (res) => setTimeout(res, 500) ); // Что там в качестве аргумента указано - (res) => setTimeout(res, 500) // Это функция, которая исполняется при положительном исполнении промиса?
}
async function inParallel() { // Тут понятно - объявляется асинхронная функция
const await1 = await pause500ms(); // Тут уже не понятно. В константу await1 записывается функция(?) или результат ее исполнения, а именно промис?
const await2 = await pause500ms();
await await1; // А здесь, получается, функция вызывается?
await await2;
console.log("I will be logged after 500ms");
}
Не понятно почему эта херня будет выполняться параллельно
const await1 = await pause500ms(); // ожидаем 500мс разрешение промиса и получаем undefined
const await2 = await pause500ms(); // ожидаем 500мс разрешение промиса и получаем undefined
await await1; // передаем undefined и получаем разрешенный промис
await await2; // передаем undefined и получаем разрешенный промис
console.log("I will be logged after 500ms"); // No, you will be logged after 1000ms
await await1;
и await await2;
на первый взгляд не оказывают влияния на код, но это не так.(async() => {
await console.log(1);
await console.log(2);
console.log(3);
})();
console.log(4);
(async() => {
await console.log(5);
console.log(6);
})();
console.log(7);
// 1
// 4
// 5
// 7
// 2
// 6
// 3
Какой промис возвращает функция - разрешенный или нет?
function pause500ms() {
return new Promise(function(resolve) {
setTimeout(function() {
resolve(); // вот тут разрешается созданный Promise
}, 500);
});
}
В константу await1 записывается функция(?) или результат ее исполнения, а именно промис?
А здесь, получается, функция вызывается?
await await1;
await await2;
console.log("I will be logged after 500ms");
Promise.resolve(undefined).then(() => {
Promise.resolve(undefined).then(() => {
console.log("I will be logged after 500ms");
});
});
Что значит возвращает промис?
// Что значит промис. Промис, это спецобъект, содержащий свое состояние и инструкции, которые необходимо исполнить после достижения того или иного состояния. Так? Так.
// Вот функция, она возвращает промис. Что значит возвращает промис?
// Что значит промис. Промис, это спецобъект, содержащий свое состояние и инструкции, которые необходимо исполнить после достижения того или иного состояния. Так? Так.
// Какой промис возвращает функция - разрешенный или нет?