Async是ES8里面的技术 Async修饰了function,那么该function返回值类型是Promise对象
// 需求:定义一个函数,返回Promise对象,并且在成功状态中设置数据
function handlePromise() {
return new Promise((resolve, reject) => {
resolve("这是数据");
})
}
function handleProm() {
return Promise.resolve("这是数据");
}
async function handleAsync() {
return "这是数据";
}
handleAsync().then(data=>{
console.log(data)
})
await
await: 1、在调用函数时,前面添加了await属性,那么该函数必须返回promise对象 2、await只有当函数返回了Promise对象,那么程序才能继续往后执行【阻塞机制】 3、await必须和async一起使用【await所在的函数必须被async修饰】
let fs = require("fs");
// 异步读取文件
function getData() {
let str = "数据";
return new Promise(resolve => {
fs.readFile("./c.txt",(error,data)=>{
resolve(data+str);
});
});
}
handle();