console.log(1)

setTimeout(() => {
    console.log(2)
}, 1000)

Promise.resolve().then(() => {
    console.log(3)
})

Promise.resolve().then(() => {
    console.log(4)
    setTimeout(() => {
        console.log(5)
    }, 0)
}).then(() => {
    console.log(6)
})

console.log(7)

// 1 7 3 4 6 5 2