【发布时间】:2021-10-04 15:05:58
【问题描述】:
我的理解是 javascript 是单线程的,这意味着它一次只会执行一行。
对于下面的代码,为什么需要'await'?我认为它仍然会在移动到下一行之前执行 fetch:
const res = await fetch('http://testurl.com');
有人可以解释 await 在单线程语言中的重要性吗?
谢谢
【问题讨论】:
-
js确实是单线程的,但也可以是异步的
-
也许太挑剔了,但是:将其视为“一次一行”执行是不对的。那么
console.log( \n " foo" \n);(\n代表换行符)呢?console.log(不会在"foo"之前执行,等等。在评估代码之前,它会被解析为其他表示语句和表达式的表示。这些是一个接一个地执行的。
标签: javascript asynchronous async-await