Добрый день! Проблема с пониманием promise
function func() {
return new Promise(resolve => resolve())
}
func()
.then(() => {
setTimeout(() => console.log(1), 0)
return func()
})
.then(() => console.log(2))
Если последующий then должен ждать выполнение предыдущего, почему выводит 2 потом 1? Буду благодарен за помощь