【问题标题】:How to run asynchronous code in chrome devtools when script execution is paused?脚本执行暂停时如何在chrome devtools中运行异步代码?
【发布时间】:2019-05-20 01:04:45
【问题描述】:

await Promise.resolve(1) 在 chrome devtools(chrome 版本 70.0.3538.77)中解析为:

  • 1 当脚本执行没有暂停时
  • Promise <pending> 当脚本执行暂停时

脚本执行暂停时如何解析为1

注意

这个问题继续chrome debugger promises dont resolve while paused? 以找到在 chrome 暂停时解决 Promise 的确切方法

【问题讨论】:

  • console.log(await Promise.resolve(1))
  • @Keith,不,它也解析为 Promise <pending>
  • @Keith,这是复制品imgur.com/a/oDDDet9
  • @DanielBeck 我不想执行脚本,我想在脚本暂停时执行异步函数(想想看,我可以在暂停时计算普通函数,但不能计算异步调用,为什么?)
  • 是的。 JS 是单线程的,这意味着它有 1 个单消息循环。当您暂停时,它将暂停消息循环。如果不是这样,调试会更加困难。您要解决什么问题,我想知道这是不是 X/Y 问题。

标签: javascript google-chrome debugging google-chrome-devtools


【解决方案1】:

回答 - 当 js 在 chrome 中暂停时,即使是在控制台中创建的 Promise,也不可能解决 Promise

(js是单线程的)

【讨论】:

    猜你喜欢
    • 2023-04-04
    • 2020-05-25
    • 2021-12-17
    • 1970-01-01
    • 1970-01-01
    • 2015-11-13
    • 1970-01-01
    • 1970-01-01
    • 2021-01-18
    相关资源
    最近更新 更多