频道栏目
首页 > 资讯 > HTML/CSS > 正文

Promise、Async/Await的使用

17-03-15        来源:[db:作者]  
收藏   我要投稿

Prosmise对像是es6的新特性,也是异步编程的解决方案。

var promise = new Promise(function (resolve , reject) {
        var result = axios.get('../data.json');
        if (result){
            resolve(result)
        }else {
            reject(new Error())
        }
    });

使用方法是 new Promise 对象,里面有两个参数,一个是resolve,一个是reject。resolve表示解决、成功,reject表示拒绝、失败。(axios是异步请求库,类似jq 的ajax)
调用:

promise.then(function (data) {
        console.log(data.data)
    })

asyncawait,是一对好机油,配合一起使用。功能类似Generator 函数 (*),但是更语义化,使用方法:

function resolveAfter2Seconds(x) {
  return new Promise(resolve => {
    setTimeout(() => {
      resolve(x);
    }, 2000);
  });
}

async function f1() {
  var x = await resolveAfter2Seconds(10);
  console.log(x); // 10
}
f1();

将异步转为同步,如果去掉 async 、await,结果会是undefined

相关TAG标签
上一篇:台积电:绝大多数7nm客户都会转向6nm_IT新闻_博客园
下一篇:最后一页
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站