async
作为一个关键字放到函数前面
- 任何一个
async
函数都会隐式返回一个promise
await
关键字只能在使用async
定义的函数中使用
-
await
后面可以直接跟一个Promise
实例对象
-
await
函数不能单独使用
async
/await
让异步代码看起来、表现起来更像同步代码
async function queryData() {
var ret = await new Promise(function(resolve, reject) {
setTimeout(function() {
resolve('nihao');
}, 1000);
});
return ret;
}
queryData().then(function(data) {
console.log(data);
})
axios.defaults.baseURL = 'http://localhost:3000';
async function queryData() {
var info = await axios.get('async1');
var ret = await axios.get('async2?info=' + info.data);
return ret.data;
}
queryData().then(function(data) {
console.log(data);
})