async 表示函数里有异步操作,使函数成为异步函数,调用该函数时,会立即返回一个Promise对象
    await 表示紧跟在后面的表达式需要等待结果,异步函数是一个知道怎样使用 await 关键字调用异步代码的函数
    await 只在异步函数里面才起作用。它可以放在任何异步的,基于 promise 的函数之前
    await 会暂停代码在该行上,直到 promise 完成,然后返回结果值。在暂停的同时,其他正在等待执行的代码就有机会执行了
    await 关键字使JavaScript运行时暂停于此行,允许其他代码在此期间执行,直到异步函数调用返回其结果。一旦完成,您的代码将继续从下一行开始执行

    await 关键字会阻塞其后的代码,直到promise完成,就像执行同步操作一样。它确实可以允许其他任务在此期间继续运行,但您自己的代码被阻塞

    用更少的.then()块来封装代码,同时它看起来很像同步代码,所以它非常直观