JS 异步和单线程

一.异步和同步

同步:比如你今天要做前端把静态和该做的都做完了,然后tmd,后端一直没动静,不给接口,导致你做不了,阻塞了,而且你就真的就不动了,饭也不吃了,那么称为同步
同步就是,你干的事情,可能会阻塞在某个地方
在JS 里面就是 alert() 在alert弹出框框点击确定之前,alert下面的代码不会执行

异步:比如你今天要做前端和静态和该做的都做完了,然后tmd,后端一直没动静,不给接口,你灵机一动,上了后端,然后你就去玩游戏,吃饭啊什么的,没阻塞在后端这里,那么称为异步
在JS 就是 setTimeout 或者 setInterval 或者 ajax这类的
就算执行需要时间,你也可以先做他们之下的事情,不会阻塞代码的总体运行和这些语句后续的事情

异步

console.log(100)
setTimeout(() => {
    console.log(200)
}, 0);
console.log(2)

这里注意,就算时间为0,也不会立即执行,这些 setTimeout 或者 setInterval 或者 ajax之类的操作,会被暂时放到一个暂存区,等待总体代码执行后才会执行,执行结果为 100 2 200

同步

alert(123)
console.log(19)

在这个123 弹出来你不关闭之前,这个console.log(19) 是不会执行的,会阻塞在这

二:单线程
什么是单线程呢,就是这个代码你只能自己一个人从头到尾执行下来,没人帮你的忙。
多线程就是类似公司,不同人有不同的工作,每个人都执行自己的工作,这个就是多线程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值