首页 > Web开发 > 详细

js 异步代码

时间:2019-03-21 23:13:04      阅读:186      评论:0      收藏:0      [点我收藏+]

  这段时间一直在用node.js做毕设的后台,所以需要一些异步代码操作,主要的异步方式有:Promise、Generator 和 async / await,但下面主要讲 Promise 和 async / await 。

一、Promise

1、Promise表示一个异步操作的最终结果,可以理解为状态机,它有三种状态

(1)Pending:表示还在执行

(2)Fullfilled(或者resolved):执行成功

(3)Rejected:执行失败

2、Promise 的构造函数

var promise = new Promise(function (resolve,reject){
    if(/*异步操作成功*/){
        resolve(value);
    }else{
        reject(value);
    }
});

代码例子如下:

技术分享图片

3、使用then方法获取结果

  then方法接受两个匿名函数作为参数,它们代表onResolved 和 onRejected 函数。value 和 error参数代表回调的结果,如下所示:

技术分享图片

二、async / await

  async 函数总是会返回一个Promise对象,如果return 关键字后面不是一个Promise,那么默认调用promise.resolve 方法进行转换。对于async 函数来说,await关键字不是必需的,await 关键字可以“自动执行”一个Promise ,获得结果。如果async函数有多个await 要执行,它会顺序执行 这些Promise对象。如下所示:

技术分享图片

js 异步代码

原文:https://www.cnblogs.com/threepigs/p/10574868.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!