Google chrome devtools 为什么setTimeout不能从chrome开发工具中工作?

Google chrome devtools 为什么setTimeout不能从chrome开发工具中工作?,google-chrome-devtools,Google Chrome Devtools,在chrome开发工具中进行非常简单的测试 setTimeout(alert, 1000) 在ChromeDevTools中,不会发生任何事情(它会返回timerId),但计时器从不触发。 在Firefox中,这会打开一个警报框 为什么setTimeout不能在chrome开发工具上工作 Mac上的53.0.2785.101版(64位) 嗯,发现了一个有趣的副产品,关闭devtools会导致代码超时。因此,只有当devtools仍然打开时才会发生这种情况。它在Chrome for meIt中

在chrome开发工具中进行非常简单的测试

 setTimeout(alert, 1000)
在ChromeDevTools中,不会发生任何事情(它会返回timerId),但计时器从不触发。 在Firefox中,这会打开一个警报框

为什么setTimeout不能在chrome开发工具上工作

Mac上的53.0.2785.101版(64位)


嗯,发现了一个有趣的副产品,关闭devtools会导致代码超时。因此,只有当devtools仍然打开时才会发生这种情况。

它在Chrome for meIt中有效,在53.0.2785.116(64位)Mac中也适用。如果Chrome仍在运行,可能会重置Chrome。我猜您正在调试,js在断点处暂停。由于js引擎是单线程的,因此只有在关闭devtools后恢复执行时才能触发事件。另一种恢复方法是在devtools中按F8键或“播放”按钮。我们没有调试,只是选择mozilla文档页面设置超时,并将一些代码粘贴到开发控制台中。