gpt4 book ai didi

javascript - 为什么 alert();在 console.log() 之前运行;

转载 作者:数据小太阳 更新时间:2023-10-29 05:21:19 27 4
gpt4 key购买 nike

我的问题与其他问题有何不同

我使用的是 ES6 语法。我查看的其他问题使用 ES5 语法。

问题

为什么 alert();console.log(); 之前运行?我是否可以让 console.log();alert(); 之前执行?

我的代码

console.log("Hello!");
alert("Hi!");

最佳答案

console.log("Hello!");
setTimeout(() => alert("Hi!"), 0);

基本上:从技术上讲,console.log() 首先被调用。 然而,浏览器实际上重新绘制自身或控制台更新也需要一些时间。不过,在它可以 self 更新之前, alert() 已经触发,它说“在我确认之前停止一切”。所以消息发送到 console.log,但视觉确认不及时。

在 0 秒 setTimeout 中包装一些东西是告诉 JavaScript“嘿,在一切都完成运行和更新之后立即给我打电话的老把戏。”


† 您可以通过在警报对话框之前执行类似 console.log(new Date().toString()); 的操作来验证这一点,然后等待几分钟再关闭警报。请注意,它记录的是您第一次运行它时的时间,不是现在的时间。

关于javascript - 为什么 alert();在 console.log() 之前运行;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47127173/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com