【问题标题】:javascript await and python await, are they same concept?javascript await 和 python await,它们是同一个概念吗?
【发布时间】:2021-12-31 18:24:26
【问题描述】:

从用户的角度来看,

当我们想到 for 循环时..
我们可以说 javascript 或 python 中的 for 循环在概念上是相同的。

我们可以说两种语言中的await 在概念上是相同的吗?

我闻到了,这可能是一个糟糕的问题.. 但对我来说虽然是个有趣的问题..

【问题讨论】:

  • 在大多数情况下,是的。 async/await 只是意味着使用事件循环,换句话说(通常)在同一个线程上同时运行东西。使用 await 表示“暂停执行此函数直到返回”是相同的。 JS 包装了这个逻辑以使用 Promises,但它最终是同一件事。成功返回值,失败引发错误。

标签: javascript python async-await


【解决方案1】:

TL;DR 。它们相同。

最大的不同是,

async Javascript 函数将运行如果被调用,即使没有等待await 这里是用来保证后续执行是按顺序完成的。即,编写包含异步函数的代码,就像同步代码一样。在 async-await 之前,JS 代码会变得相当复杂,因为异步函数将使用 Promise 来处理,而 Promise 链接会很快影响代码的可读性。

所以在某种程度上,JS 中的async-await 可以称为 Promise 处理的语法糖。

在 Python 中,当调用 awaitable 对象时,会创建一个协程对象。但是这个协程不会运行,除非它被等待。 这里await的用途是运行协程。

【讨论】:

    猜你喜欢
    • 2015-08-21
    • 2014-03-13
    • 2016-07-16
    • 2013-11-25
    • 2018-02-02
    • 1970-01-01
    • 1970-01-01
    • 2018-11-18
    • 2020-11-19
    相关资源
    最近更新 更多