同步
    不可以同时进行,能直接得到结果,会阻塞后续页面加载
    异步
    可以同时进行,不能直接得到结果,不阻塞页面加载,需要回调或者轮询
    回调
    在将来某个特定情况下,被其他对象调用,而不是自身调用。
    异步任务与回调
    异步任务不能直接拿到结果,因此需要传一个回调函数给任务,任务完成时调用回调函数,并把结果作为参数传进去。
    函数((x)=>{consolo.log(x)})
    参数个数相同时可以简化为
    函数(console.log)

    promise
    为什么要使用promise
    1.不规范 命名五花八门
    2.容易出现回调地狱,代码难以阅读
    3.很难进行错误处理
    使用方法
    return new Promise((resolve,reject)=>{})
    成功会调用resolve(result)
    失败会调用reject(request)
    resove,reject会再调用成功或失败函数
    用Promise.then(seccess,fail)传入成功和失败的函数
    axios 基于 Promise 的HTTP库