async await
async await 这两个关键字是高版本语法:异步的编程体变得和同步几乎一致
await 是一个函数之中的关键字,要求函数必须是 async 声明的函数。
使用 await关键字,await后面必须是 promise 对象
await 关键字会将await后面所有的代码放进异步队列之中
await就是等待 promise调用then,返回then里面结果
async就是把函数的返回值变成了promise
基本语法:
// 普通语法: function load(){ let p1 = fetch("./10_data.php"); p1.then( function ( res ){ console.log(res); }) } load(); // async await: async function load(){ let res = await fetch("./10_data.php"); let data = await res.json(); console.log(data); } load();
async 函数的返回值:
async function load(){ let res = await fetch("./10_data.php"); let data = await res.json(); return data; } // let p = load(); // // 1. 外面已经没有条件包裹 async 了; // p.then( function(res){ // console.log(res); // } ) // 2. 如果还有条件包裹 async, 那么依旧可以使用await; // async function foo(){ // var res = await load(); // console.log(res); // } // foo()
我是不是可以忽略掉promise语法那? 不行
如果想要自己想要实现返回promise的封装;还是需要使用 new Promise 进行promise创建
浙公网安备 33010602011771号