异步就是不等结果,直接进行下一步.
setClock();//定闹钟执行完了之后直接进行下一步getUp();//起床
setClock();//定闹钟就是异步代码,不等待setClock()执行完就执行...异步:我让黄牛去买票(告诉黄牛买到票就call我一下),然后我继续去做别的事
这里:我让黄牛去买票,然后我继续去做别的事就是异步,括号里的(告诉黄牛买到票就call我一下)就是回调
callBack英文有回电话的意思....就是打电话回去告诉异步结果已经得到了,可以继续依照这个结果来做下面的事了.callBack就是这个意思
代码执行完在执行下面的代码就是同步,代码没有执行完就去执行下面的代码就是异步
使用回调函数
function...就是因为有了setTimeout才算异步
所以我们来看看ajax.如果$.ajax()是同步的,即我们发送请求,然后等待服务器发回的响应来到之后在继续执行下面的代码,那么有什么后果:
假设我们想直接拿到请求的结果...所以$.ajax()返回的结果是一个承诺,不是结果,因为结果还没有到来
使用回调函数
使用回调要用这样的形式
fn(参数1,参数2,()=>{
回调函数(xxx,xxx,()=>{})
})
不要用