JavaScript运行机制

标签: 事件循环 单线程 任务队列
0人阅读 评论(0) 收藏 举报
分类:

JavaScript是单线程的,什么是单线程,单线程就是在同一时刻只能执行一个任务,只有等到这个任务完成时才会执行下一个任务。

什么是任务队列:所有的任务无非就两种,要么是同步任务,要么是异步任务。同步任务指的是在主线程上排队执行的任务,只有在前一个执行完成后才会执行下一个任务。异步任务是不进入主线程,而进入任务队列的任务,某个异步任务可以执行了(setTimeout等待时间结束,事件被触发,请求得到结果),该任务才会进入主线程执行。

一旦主线程上的同步任务被执行完,系统就会自动读取任务队列,等到任务队列里的异步任务到了执行状态,就讲这个任务放入主线程执行。只要主线程空了就会去执行任务队列,这个过程是循环不断的,这种运行机制就称为事件循环(Event Loop).


查看评论

深入理解JavaScript运行机制

深入理解JavaScript运行机制 前言 本文是写作在给团队新人培训之际,所以其实本文的受众是对JavaScript的运行机制不了解或了解起来有困难的小伙伴。也就是说,其实真正的原理和本文阐...
  • Amos_liu
  • Amos_liu
  • 2016-12-10 19:25:05
  • 1599

javascript运行机制之this详解

this是面向对象语言中一个重要的关键字,理解并掌握该关键字的使用对于我们代码的健壮性及优美性至关重要。而javascript的this又有区别于Java、C#等纯面向对象的语言,这使得this更加扑...
  • czw2010
  • czw2010
  • 2014-02-03 21:08:56
  • 14594

从setTimeout谈JavaScript运行机制

 http://www.cnblogs.com/zichi/p/4604053.html 前言   最近在看些JavaScript异步的东西,但是由于时间有限,才刚看了个头,不得不中途停止。...
  • u013071311
  • u013071311
  • 2015-06-29 15:44:18
  • 316

JavaScript 运行机制详解

原文链接:http://www.ruanyifeng.com/blog/2014/10/event-loop.html 一、为什么JavaScript是单线程? JavaScript语言的一大...
  • u010874036
  • u010874036
  • 2016-03-22 12:05:37
  • 1065

javascript运行机制之执行顺序详解

JavaScript是一种描述型脚本语言,它不同于java或C#等编译性语言,它不需要进行编译成中间语言,而是由浏览器进行动态地解析与执行。如果你不能理解javaScript语言的运行机制,或者简单地...
  • czw2010
  • czw2010
  • 2014-01-19 15:51:57
  • 37731

由浅入深理解闭包的运行机制

先来看看闭包的定义:指有权访问另一个函数作用域中的变量的函数。创建闭包的常用方式就是在一个函数内部创建另一个函数,先来看一个例子:function createComparsionFunction(p...
  • code_ja
  • code_ja
  • 2016-07-04 23:09:44
  • 781

我看朴灵评注阮一峰的《JavaScript 运行机制详解:再谈Event Loop》

阮一峰和朴灵对我来说都是大牛,他们俩的书我都买过,阮老师的译作《软件随想录》和朴灵的《深入浅出node.js》。这个事情已经过了4个月了,所以我拿来讲应该也没啥问题。 这件事情是这样的,阮一峰在自己的...
  • ouyida3
  • ouyida3
  • 2015-02-19 21:58:58
  • 4772

javascript运行机制之执行顺序详解(修正原作者一处错误)

JavaScript是一种描述型脚本语言,它不同于java或C#等编译性语言,它不需要进行编译成中间语言,而是由浏览器进行动态地解析与执行。如果你不能理解javaScript语言的运行机制,或者简单地...
  • babybk
  • babybk
  • 2016-04-28 13:29:12
  • 559

js运行机制详解

一、为什么JavaScript是单线程?JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊。JavaSc...
  • Hhy_9288
  • Hhy_9288
  • 2018-03-06 11:03:09
  • 57

JavaScript运行机制 消息队列 --学习篇

看来阮大神的 js运行机制之后 写了个学习笔记 当然还有很多不理解的地方  仅供自己总结和理解 首先说javascript的运行机制 毫无疑问是单线程的  啥是单线程? 就是一个时间只能做一...
  • u013321789
  • u013321789
  • 2017-02-28 00:25:24
  • 236
    个人资料
    持之以恒
    等级:
    访问量: 1273
    积分: 291
    排名: 26万+
    文章存档