写出以下代码段的输出结果,并简述理由。
setTimeout(() => {
console.log(1)
}, 0);
new Promise((resolve) => {
console.log(2);
for( var i=0 ; i<1000000 ; i++ ) {
i == 9999 && resolve();
}
console.log(3);
}).then(() => {
console.log(4);
});
console.log(5);
