Middle
// Promise.resolve() // .then(() => console.log(1)) // // .then(() => console.log(2)) // // Promise.resolve() // .then(() => console.log(11)) // // .then(() => console.log(22)) //
sobes.tech AI
პასუხი AI-სგან
Тамамдалган коддо эки убада зынжыры бар, алардын ар бири Promise.resolve() менен башталат. Консольдогу чыгуу тартибин түшүнүү маанилүү.
Ар бир .then() азыркы чакыруу стекинен кийин ишке ашуучу микротаскалар кезегине иштетүүчү кошот.
Эки зынжыр да үзгүлтүксүз түзүлгөндүктөн, алардын иштетүүчүлөрү жарыяланган тартипте кезекке коюлат.
Ошондуктан, чыгуу төмөндөгүчө болот:
1
2
11
22
Түшүндүрүү:
- Биринчи
.then(() => console.log(1))ишке ашып,1чыгарат. - Андан соң, кийинки
.then(() => console.log(2))ишке ашып,2чыгарат. - Андан соң, экинчи зынжырдан
.then(() => console.log(11))ишке ашып,11чыгарат. - Жана акырында,
.then(() => console.log(22))ишке ашып,22чыгарат.
Эгер чыгуу аралаш же башка тартипте болсун десек, убада түзүмүн өзгөртүшүбүз керек же setTimeout колдонушубуз керек болот.