天狐主题

zblog模板开发

JavaScript栈、任务队列、同步、异步

关于如下案例,大家来猜测一下执行的结果是什么?

JavaScript
console.log(1)setTimeout(()=>{
  console.log(2)}, 0)console.log(3)

经过测试我们可以知道输出的结果是1,3,2而不是1,2,3;这是什么原因造成的呢?

第一点就是要为大家引出单线程的概念了,JavaScript是一种单线程语言,也就是说在一个线程上只能运行一个任务;

大家也可以理解为只有一个人在处理当前的任务,如果任务太多,只能按照顺序排队处理,因为这个人同时只能干一件事情;


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«   2022年3月   »
123456
78910111213
14151617181920
21222324252627
28293031
控制面板
网站分类
搜索
最新留言
    文章归档
      网站收藏
      友情链接
      • Z-BlogPHP
      • 订阅本站的 RSS 2.0 新闻聚合

      Powered By Z-BlogPHP 1.6.7 Valyria

      Copyright Your WebSite.Some Rights Reserved.粤ICP备2021030632号