我的问题是关于我在下面显示的代码(我知道这是一个糟糕的代码,因为我用了一段时间)。
我在执行脚本时期望这个输出顺序:
1.显示 Hello 消息
2. Javascript进程为3000毫秒
3.消息约。显示已用时间3000 。
但是会发生什么:
1.浏览器阻塞3000毫秒
2.显示 Hello 消息
3.消息约。显示已用时间3000 。
我一直在阅读一些东西,他们表示开发者工具扩展程序在另一个线程中运行,但这仍然无法解释为什么它的行为与其他语言(如C#)不同。例如。
谢谢您的帮助。
<script type="text/javascript">
console.log("Hello");
var start = new Date().getTime();
var now = new Date().getTime();
var diff_time = now-start;
while (diff_time<3000){
now = new Date().getTime();
diff_time = now-start;
}
console.log("aprox. elapsed time 3000");
</script>