这里只是个人的理解,用于理解+笔记,记录对异步的粗糙理解。
--写在前面
异步的情景:
一:异步的出现场景可分为以下
1. Ajax请求数据时
2. 定时器
3. 一些点击事件(这里暂时了解的不是特清楚)
二:注意点
1. 为什么会需要异步?
2. 异步的原理是怎么样的?
3. 当多个异步同时出现,他的执行顺序是怎么样的?
为什么会需要异步?
由于 js是单线程的语言 ,这样对于也就注定了他不能像其他语言一样 同一时间内同时 执行多个任务,所谓“单线程”就是一根筋,对于拿到的程序,一行一行的执行,直到执行为完成,中间如果有 卡顿,延迟都会一直等待,别的事都不做。
var i, t = Date.now()
for (i = 0; i < 100000000; i++) {
}
console.log(Date.now() - t) // 250 (chrome浏览器)
上面这种执行时没问题的,但是js用在游览器客户端,可能会有大量的网络请求,而一个网络资源啥时候返回,这个时间是不可预估的,
对于这种场景 js就设计了异