未捕获的异常 - 所有 JavaScript 代码都是同步的吗? - 异步代码是如何执行的?

问题描述 投票:0回答:0

https://stackoverflow.com/a/17572337/21729640

你的问题措辞混乱。

整个Javascript语言是完全同步的;所有语言 构造,包括

catch
finally
块,将执行 在运行下一行代码之前同步。

但是,他们不知道任何异步操作可能会导致 已经开始,不会等待他们完成。

我找到了这个答案,它说所有 JavaScript 代码都是同步的。所以这让我想到了以下问题:

异步代码获得执行时间时,1)它是否以正常方式执行,(它将在执行下一行代码之前同步执行)即同步

  1. 也就是说,异步代码指的是稍后执行的“正常”代码,对吗?

try { setTimeout(function() { throw new Error('Ups'); }, 5000); } catch (error) { // do something }

比如这个异常就不会被捕获。

javascript asynchronous try-catch synchronous
© www.soinside.com 2019 - 2024. All rights reserved.