博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js 循环 等待异步执行完再执行_JS的同异步执行顺序分享给大家
阅读量:5149 次
发布时间:2019-06-13

本文共 515 字,大约阅读时间需要 1 分钟。

我们都知道,JS是一门单线程的脚本语言,单线程有个很大的问题就是阻塞;当我当前的动作没有完成时,后边的动作就要等着当前动作完成之后才能开始;那既然会有这么严重的,为什么JS还是选择了单线程?         

JS是让用户通过用来操作DOM的,那么试想一下,若是多线程的话,我点一个按钮,是要增加一个标签,但是另一个线程还没走完,这个线程是要删除一个标签,那么浏览器就蒙圈了,我到底听谁的,一个让我加,一个让我删除?这样乱套了。所以JS最终成了一门单线程的语言,那么怎么去解决这个阻塞呢? 异步应运而生!

// 代码块1 // 下边我们看看这个例子,来体验一下异步的神奇; console.log(1); setTimeout(()=>{    
    console.log(2) },10) console.log(3); for(let i = 0; i 999999999; i++){
    // 这个for循环执行完成所需事件大于10秒 } console.log(4) // 输入结果为: 1 3 4 2

上边的代码是怎么执行的呢?

JS的异步有个大特点,须当同步代码执行完成后,才会再去执行异步,哪怕异步已经

转载地址:http://xadnv.baihongyu.com/

你可能感兴趣的文章
【OpenJ_Bailian - 2287】Tian Ji -- The Horse Racing (贪心)
查看>>
循环引用 。 @class
查看>>
rabbitmq
查看>>
Java网络编程--socket服务器端与客户端讲解
查看>>
Git 中README.md中MarkDown语法示例
查看>>
Android实现双进程守护
查看>>
IPC,Hz(Hertz) and Clock Speed
查看>>
C++ Primer 第二章 学习笔记
查看>>
List_统计输入数值的各种值
查看>>
Cocos2d-x 的“HelloWorld” 深入分析
查看>>
别让青春再浪费_个人经历
查看>>
POJ2566-Bound Found (尺取法)
查看>>
学习笔记-KMP算法
查看>>
学习笔记--树链剖分
查看>>
设计模式《JAVA与模式》之访问者模式
查看>>
Timer-triggered memory-to-memory DMA transfer demonstrator
查看>>
《架构之美》阅读笔记六
查看>>
boa web服务器
查看>>
将博客搬至CSDN
查看>>
AngularJS ng-model在ng-if里面无效
查看>>