javascript重定向(设置window.location.href)后代码会发生什么?

use*_*729 25 javascript firefox google-chrome cross-browser window.location

我有以下javascript重定向代码,后面跟着一些代码.

window.location.href = '/someurl';
alert('hello');
alert('hello again');
Run Code Online (Sandbox Code Playgroud)

这会导致浏览器不一致.

在Firefox中,第一个警报在重定向之前可以在瞬间显示.根本看不到第二个警报.

在chrome中,两个警报都会弹出,只有在两个警报都单击"确定"后才会发生重定向.

在重定向之后可以解决这些差异的代码有什么概念吗?如果重定向是异步的,那么chrome在做什么?我想了解发生了什么,以便我可以确定在更复杂的情况下要做什么,其中重定向深埋在一些回调和其他逻辑中.

Bil*_*bad 25

面对即将到来的厄运,Javascript会话将难以继续它的使命.以这种方式编码被认为是不可预测的.......而且很残忍.


Dan*_*nte 13

浏览器将尝试执行代码,window.location.href = 'url'直到页面进入下一个Web地址,因此将执行的代码行数取决于浏览器的速度