首页 > 其他分享 >async和await之间的关系

async和await之间的关系

时间:2023-05-29 13:55:13浏览次数:25  
标签:关系 函数 await Promise async 解析 data

async 用于定义一个异步函数,而 await 用于暂停异步函数的执行,等待一个 Promise 对象的解析。
async 函数会返回一个 Promise 对象。在函数内部,可以使用 await 来暂停函数的执行,直到一个 Promise 对象被解析。当 await 表达式被执行时,它会等待 Promise 对象被解析,并返回 Promise 对象的解析值。在这个过程中,JavaScript 运行时会暂停当前的函数执行,并执行其他任务,直到 Promise 被解析。

async function getData(){
const response = await fetch('https://example.com/data');
const data = await response.json();
return data;
}

getData().then(data => console.log(data));

在上面的示例中,getData 是一个异步函数,它使用 await 暂停函数的执行,直到 fetch 返回一个 Promise 对象。当 Promise 被解析时,它会将 JSON 数据解析为 JavaScript 对象,并将其返回。getData 函数的返回值是一个 Promise 对象,因此可以使用 then 方法处理数据。

作者:黄骏宇

标签:关系,函数,await,Promise,async,解析,data
From: https://www.cnblogs.com/DTCLOUD/p/17440214.html

相关文章

  • Pytest - Fixture(6) - 作用域混用/执行顺序/依赖关系
    Pytest-Fixture作用域混用若测试用例调用多个不同级别的作用域,都会同时生效:conftest.pyimportpytest"""会话级别fixture,作用域当前目录"""@pytest.fixture(scope="session")deflogin_session():"""作用于整个py文件"""pr......
  • ConfigureAwait 干了啥?
    本文引用:异步编程之Async,Await和ConfigureAwait的关系-Leon_Chaunce-博客园(cnblogs.com)走进异步世界-犯傻也值得分享:ConfigureAwait(false)使用经验分享-博客园团队-博客园(cnblogs.com) ConfigureAwait(false)能做什么呢?默认情况下,当您使用async/await时,它将......
  • python3.10版本以后使用asyncio不报错方法
    importasyncioimporttimeasyncdeffunc1():print(1)awaitasyncio.sleep(2)print(2)asyncdeffunc2():print(3)awaitasyncio.sleep(2)print(4)asyncdefmain():task=[asyncio.ensure_future(func1()),asy......
  • Python asyncio之协程学习总结
    实践环境Python3.6.2什么是协程协程(Coroutine)一种电脑程序组件,该程序组件通过允许暂停和恢复任务,为非抢占式多任务生成子程序。协程也可以简单理解为协作的程序,通过协同多任务处理实现并发的函数的变种(一种可以支持中断的函数)。下面,我们通过日常生活场景为例,对什么是协程......
  • Python协程:从yield/send到yield from再到async/await
    Python中的协程大概经历了如下三个阶段:最初的生成器变形yield/send引入@asyncio.coroutine和yieldfrom在最近的Python3.5版本中引入async/await关键字一、生成器变形yield/send普通函数如果出现了yield关键字,那么该函数就不再是普通函数,而是一个生成器。importrandom......
  • 云服务器虚拟化超分与虚机性能关系分析
    本文分享自天翼云开发者社区《云服务器虚拟化超分与虚机性能关系分析》,作者:l****n虚拟化技术是云计算商业模式的基础,它也是推动云计算经济的核心技术。虚拟化是指使用虚拟化软件在计算机硬件上创建抽象层,将单个计算机的硬件元素(包括处理器、内存、存储器等)分成多个虚拟计算机(VM......
  • IntelliJ IDEA 中如何查看一个类的所有继承关系,包括父类与子类
    一、查看当前类所有的父类1、找到当前类所在的位置,右键选择Diagrams,然后选择ShowDiagrams……,以spring的ClassPathXmlApplicationContext类为例: 2、在弹出的框中选择JavaClassDiagrams:3、可以看到如下的结果,所有的父类继承关系: 二、查看当前所有的子类请移步我的博......
  • Rust async 编程
    Rustasync编程AsynchronousProgramminginRust:https://rust-lang.github.io/async-book/中文书名《Rust异步编程指南》:https://github.com/rustlang-cn/async-bookRust语言圣经(RustCourse):https://course.rs/advance/async/getting-started.html一、GettingStarted1.......
  • FLEX实践—XML、XMLList、XMLListCollection、ArrayCollection关系转换
    在本实例中将从一个XML对象通过层层转换最终变为ArrayCollection对象  <?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">......
  • 异步编程(Thread、ThreadPool、Task、异步关键字async/await)
    一、什么是异步Thread,是微软.Net1.0推出;ThreadPool 是微软.Net2.0推出;Task是微软.Net4.0推出;async/await是微软.Net5.0推出;       同步和异步主要用于修饰方法。当一个方法被调用时,调用者需要等待该方法执行完毕并返回才能继续执行,我们称这个方法是同步方法;当一个方......