下面这段程序的输出是什么

下面这段程序的输出是什么

<script>
    const promise = new
Promise((resolve,reject)=>{
                console.log(1);
                resolve();
                console.log(2);
            })
            promise.then(() =>{
                     console.log(3);
           })
          console.log(4);
</script>

1 2 4 3
Promise在新建后会立即执行,所以首先输出 1,2。然后,then方法指定的回调函数将在当前脚本所有同步任务执行完后才会执行,所以3 最后输出。

1 2 4 3