首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JavaScript
订阅
ableding
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
做一些动图,学习一下EventLoop
最近在学习Vue源码,刚好学到虚拟DOM的异步更新,这里就涉及到JavaScript中的事件循环Event Loop。之前对这个概念还是比较模糊,大概知道是什么,但一直没有深入学习。刚好借此机会,回过
再也不怕Chrome和Node的事件循环啦
js的是单线程的,如果一个任务执行时间过长,那程序的执行就会被阻塞。 网页的渲染过程就是一大堆同步任务,比如页面骨架和页面元素的渲染。而像加载图片音乐之类占用资源大耗时久的任务,就是异步任务。 主线程会在执行完同步任务后去执行异步任务。 常见的 setTimeout,Promi…
图解 Google V8系列--V8是如何实现微任务的?
前一篇文章介绍了通用的 UI 线程架构,每个 UI 线程都拥有一个消息队列,所有的待执行的事件都会被添加进消息队列中,UI 线程会按照一定规则,循环地取出消息队列中的事件,并执行事件。而 JavaSc
图解 Google V8系列--V8是怎么实现回调函数的?
我们在使用 JavaScript 时,经常要用到大量的回调函数,比如在浏览器中可以使用 setTimeout 来设置定时器,使用 XMLHTTPRequest 来异步下载资源文件,在 Node 中可以
对于let 是否存在变量提升的思考?
因为var会进行变量提升,所以可以在声明之前访问,不会形成暂存死区。 var和let声明的变量可以重新赋值,const不可以。 每次都是这个样回答,面试官也没有说什么。 let 的「创建」过程被提升了,但是初始化没有提升。 声明阶段(Declaration phase)正在范围…
[译] JavaScript 如何工作:对引擎、运行时、调用堆栈的概述
PS: 好久没写东西了,最近一直在准备写一个自己的博客,最后一些技术方向已经敲定了,又可以开心的学习了,node系列后续再开始。 随着JavaScript越来越流行,越来越多的团队广泛的把JavaScript应用到前端、后台、hybrid 应用、嵌入式等等领域。 这篇文章旨在深…
一次弄懂Event Loop(彻底解决此类面试问题)
Event Loop即事件循环,是指浏览器或Node的一种解决javaScript单线程运行时不会阻塞的一种机制,也就是我们经常使用异步的原理。 是要增加自己技术的深度,也就是懂得JavaScript的运行机制。 现在在前端领域各种技术层出不穷,掌握底层原理,可以让自己以不变,…
当 Event Loop 遇上事件冒泡
一. 前置知识 1. 栈 栈是一种后进先出的数据结构, 栈只支持对栈顶进行数据的插入和删除。 你可以想象成一沓书, 先放的被压在底下, 后放的可以最先拿出来。 2. 队列 队列是一种先进先出的数据结构, 队列只支持对队尾进行数据插入, 对对头进行数据删除。 可以想象成排队, 先…
你可能不知道的 JavaScript 模块化野史
对于 JavaScript 新手,看到 "CommonJS vs AMD" 、"Requirejs vs Seajs"、"Webpack vs. Browserify"等这些可能会不知所措。 特别是在大部分浏览器都已经实现 ES6 模块化规范的今天,我们新开发的项目基本都是 E…