![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 94
记录js知识点
IT沐华
这个作者很懒,什么都没留下…
展开
-
看完还不懂JavaScript执行机制(EventLoop),你来捶我
上一篇文章介绍了进程与线程,知道渲染进程都有一个主线程,并且主线程工作很多,要处理DOM、计算样式、布局、还有鼠标、键盘等各种JS任务 我们都知道JS是单线程,任务只能一件一件地执行,那么浏览器是怎么让这么多类型的任务在主线程上有条紊地执行的呢? 这就需要任务队列和事件循环了 任务队列(消息队列) 什么是任务队列呢? 它是一种数据结构,存放要执行的任务。然后事件循环系统再以先进先出原则按顺序执行队列中的任务。产生新任务时IO线程就将任务添加在队列尾部,要执行任务渲染主线程就会循环地从队列头部取出执行,如图原创 2021-10-05 22:59:18 · 126 阅读 · 0 评论 -
如何使用 Web Worker 为 JS 创造多线程环境?
Web Worker是什么 我们都知道JS是单线程的,所有任务在一个线程上,一次只能做一件事。虽然可以通过AJAX、定时器等可以实现"并行",但还是没有改变JS单线程的本质,把一些复杂的运算放在页面上执行,还是会导致很卡,甚至卡死 而HTML5标准中的Web Worker为JS创造多线程环境,允许主线程创建Worker线程并给它分配任务,而且在主线程执行任务的时候,worker线程可以同时在后台执行它的任务,互不干扰 这让我们可以将一些复杂运算、高频输入的响应处理、大文件分片上传等放在worker线程处理,原创 2021-09-30 11:19:33 · 321 阅读 · 0 评论 -
V8引擎的JavaScript内存机制
对于前端攻城师来说,JS的内存机制不容忽视。如果想成为行业专家,或者打造高性能前端应用,那就必须要弄清楚JavaScript的内存机制了 先看栗子 function foo (){ let a = 1 let b = a a = 2 console.log(a) // 2 console.log(b) // 1 let c = { name: '掘金' } let d =原创 2021-10-04 22:33:39 · 179 阅读 · 0 评论