Javascript 里 Promise 和 await 用法

Javascript 里 Promise 和 async await 用法区别

<html>
<body>
<script>
//新建一个Promise
async function getNum() {
  return new Promise(function (resolve, reject) {

    setTimeout(function () {
      resolve(2);// 返回2
    }, 2000);
  });

}

//执行结果是1,3,2
var a = function () {

  console.log("1");

  getNum().then(function (result) {

    console.log(result);

    //后续处理代码应该放到这里,如果继续涉及到 Promise ,会导致代码嵌套

  }).catch(function (error) {

    console.log('error', error);
  });

  console.log("3");// 先于promise的then 方法执行
}();

//执行结果是1,2,3
var b = async function () {

  console.log("1");

  var n = await getNum();// 这后面的代码,实际上是被放到 promise 的 then 方法里执行的。

  console.log(n);

  console.log("3")
}();

</script>
</body>
</html>

 

执行结果如下:

 

posted @ 2021-03-09 23:04  电脑程序爱好者  阅读(363)  评论(0)    收藏  举报