首页 > 解决方案 > 位置更改后javascript如何继续执行

问题描述

<script></script>考虑在一个简单的 HTML 页面中以块的形式执行以下代码示例。

//synchronous
location.href = 'https://google.com';
console.log('test');

或者

//asynchronous
location.href = 'https://google.com';
setTimeout(() => console.log('test'));

在这两种情况下,在更改位置之前,它仍会在控制台中打印“测试”消息。

为什么会这样?在重置和新的全局 JS 上下文将开始之前,如何准确判断 JS 执行将在当前站点中停止的位置?

它甚至是可确定的过程,还是完全随机的,取决于在新位置加载站点的速度?

标签: javascript

解决方案


推荐阅读