当使用 window.location.replace 或 window.location.href 控制页面跳转的时候,会等当前宏任务走完再跳转。
window.location.replace
window.location.href
也就是说,控制跳转代码后面的同步代码会执行,Promise 创建的微任务也会执行,但 setTimeout 创建的任务就不会执行了。
Promise
setTimeout