• js 同步、异步的概念,async 和 await 的说明


    啥是同步、啥是异步

    JavaScript中,同步(Synchronous)和异步(Asynchronous)是两种处理代码执行顺序的主要方式,

    同步(Synchronous)

    执行顺序:
    	
    	在同步编程中,代码按照书写顺序,一行一行地执行,每一行代码都必须等待上一行代码执行完毕后才能执行,
    
    	如果在执行过程中,遇到耗时操作(如网络请求或大量计算),程序会阻塞,直到该操作完成。
    
    资源利用:同步编程对系统资源的利用率较低,因为在等待耗时操作完成期间,程序无法执行其他任务。
    
    适用场景:适用于,必须按照特定顺序执行,且不需要等待外部资源或异步操作的情况。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    异步(Asynchronous)

    执行顺序:
    
    	在异步编程中,代码的执行顺序并非严格按照书写顺序,
    	
    	当遇到耗时操作时,程序不会等待该操作完成,而是继续执行后面的代码,
    	
    	当耗时操作完成后,再通过回调函数、Promise、async/await 等方式通知程序处理结果。
    
    资源利用:异步编程可以充分利用系统资源,因为在等待耗时操作完成期间,程序可以执行其他任务。
    
    适用场景:适用于那些需要等待外部资源(如网络请求、文件读写等)或异步操作的情况,以提高程序的响应速度和用户体验。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    async、await

    async 和 await,是JavaScript中用于处理异步操作的关键字,它们本身并不是同步或异步,而是用于简化异步操作的语法糖

    async函数

    async函数,是用来定义一个异步函数的关键字,它会返回一个Promise对象,
    
    在async函数中,可以使用await关键字来等待一个Promise对象的状态变更,以实现同步的写法。
    
    • 1
    • 2
    • 3

    await关键字

    await关键字,只能在async函数中使用,用于等待一个Promise对象的状态变更,
    
    当使用await关键字等待一个Promise对象时,代码会暂停执行,直到该Promise对象状态变为resolved或rejected,然后继续执行后续代码。
    
    • 1
    • 2
    • 3

    总结

    async和await本身并不是同步或异步,它们是用于处理异步操作的语法糖,可以让异步操作以同步的方式来编写和理解。
    
    使用async和await,可以简化异步操作的编写,避免回调地狱和提高代码的可读性。
    
    • 1
    • 2
    • 3

    因此

    async和await本身并不是同步或异步,而是用于处理异步操作的工具,它们可以让异步操作以更直观、简洁的方式来编写和管理。
    
    • 1
  • 相关阅读:
    7、Linux驱动开发:设备-自动创建设备节点
    软件设计师--知识产权高频考点总结
    Python实现基于移动网络通讯行为的风险用户识别
    【信息系统项目管理师】--【信息技术发展】--【现代化创新发展】--【大数据】
    c++小游戏(更新中)
    可以用爱因斯坦求和替代的那些矩阵运算
    公司保密协议(中英对照)Confidentiality-Agreement
    刷题日记1
    JVM虚拟机理解
    Spring(八)Spring 整合 MyBatis、Junit
  • 原文地址:https://blog.csdn.net/pig_ning/article/details/138133762