1、async:用来申明一个函数是异步函数,该函数返回一个Promise对象。
2、await:只能用在async函数中,表示等待异步命令执行完毕再向下执行后面的语句,得到的是已经有了确定结果的对象。
3、容易使人混乱的是:async函数如果 有返回值,则返回的一定是一个Promise对象,哪怕在函数内部已经是确定结果的对象,return出来的也是Promise对象。
4、Promise对象:是一个异步结果,这个对象代表异步执行未完成,结果为不确定。得到这个对象的确定结果要通过回调。
一种方法是在.then .catch中分别获取正确执行和执行错误的结果;
另一种法方是在async函数中使用try{}包裹标记为await的语句,等待获取正确执行结果,注意:如果这时想return出去这个结果,那就要失望了,async函数return出去的又会变为Promise对象;可以选择是否在catch{}语句块中获取执行错误的结果。