JavaScript location.href调用是异步的吗?
Is JavaScript location.href call asynchronous?
function fun(){
console.log("Hi");
window.location.href="http://www.google.com";
console.log("Hello, how are you");
alert("I am good");
fun1();
}
function fun1(){
console.log("Whats up??");
}
在上面的代码行中,location.href
之前被调用
console.log("Hello, how are you")
、alert
和 fun1()
。
当我调用 fun()
时,它会执行 location.href
下面的所有语句,然后重定向到 https://www.google.com
。 location.href
调用本质上是异步的吗?如果不是,那么发生了什么?
我认为当它将用户重定向到其他页面时,它下面的代码行将永远不会执行。
任何 help/explanation 不胜感激!
浏览器将在 window.location.href = "http://google.com"
之后执行代码,直到浏览器转到下一个网址。因此,将执行的行数取决于浏览器速度或用户稍后同步输入的某种组合(在您的情况下为 alert
)。
function fun(){
console.log("Hi");
window.location.href="http://www.google.com";
console.log("Hello, how are you");
alert("I am good");
fun1();
}
function fun1(){
console.log("Whats up??");
}
在上面的代码行中,location.href
之前被调用
console.log("Hello, how are you")
、alert
和 fun1()
。
当我调用 fun()
时,它会执行 location.href
下面的所有语句,然后重定向到 https://www.google.com
。 location.href
调用本质上是异步的吗?如果不是,那么发生了什么?
我认为当它将用户重定向到其他页面时,它下面的代码行将永远不会执行。
任何 help/explanation 不胜感激!
浏览器将在 window.location.href = "http://google.com"
之后执行代码,直到浏览器转到下一个网址。因此,将执行的行数取决于浏览器速度或用户稍后同步输入的某种组合(在您的情况下为 alert
)。