![](https://i-blog.csdnimg.cn/direct/d7466f831e184e7e9e07488db7109881.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
前端基础
文章平均质量分 66
html,css,js 相关
月语晨风
这个作者很懒,什么都没留下…
展开
-
浏览器进程和事件循环eventloop机制(一)
进程-->CPU 分配资源的最小单位,同一个时间内单个CPU 只能运行一个进程,单个 CPU一次只能运行一个任务;线程-->CPU 调度的最小单位,一个进程里面包含多个线程。原创 2024-02-26 23:36:01 · 140 阅读 · 0 评论 -
浏览器渲染进场-GUI渲染线程
GUI线程渲染的结果不会立刻呈现在屏幕上,等屏幕刷新时才会呈现出来。屏幕刷新频率一般60HZ,即16.6ms(1000ms/60)刷新一次屏幕。6、当界面需要重绘(Repaint)或由于某种操作引发回流(reflow)时,该线程就会执行;,当JS引擎执行时GUI线程会被挂起(相当于被冻结了),GUI更新会被保存在一个队列中。在浏览器时间进程eventLoop机制中,GUI渲染线程是在当前。2、css代码转换为cssom (css object model);5、将布局绘制(paint)在屏幕上;原创 2024-03-20 17:37:11 · 411 阅读 · 0 评论 -
浏览器进程和事件循环eventloop机制(三)
第一,由于JavaScript是可操纵DOM元素的,如果在修改这些元素属性同时渲染界面(即JS线程和UI线程同时运行),那么渲染线程前后获得的元素数据就可能不一致了。第二,由于JavaScript没有锁的概念,如果同时操作DOM元素,会发生冲突,产生问题因此为了防止渲染出现不可预期的结果,浏览器设置GUI渲染线程与JS引擎为互斥的关系,当JS引擎执行时,GUI线程会被挂起,GUI的更新则会被保存在一个队列中等到JS引擎线程空闲时立即被执行。原创 2024-03-12 22:36:27 · 1551 阅读 · 0 评论 -
浏览器进程和事件循环eventloop机制(二)
看到这里,首先,应该对浏览器内的进程和线程都有一定理解了,那么接下来,再谈谈浏览器的Browser进程(控制进程)是如何和内核通信的,这点也理解后,就可以将这部分的知识串联起来,从头到尾有一个完整的概念。然后在这前提下,看下整个的过程:(简化了很多)这里绘一张简单的图:(很简化)原创 2024-03-12 00:23:13 · 147 阅读 · 0 评论 -
ES6中的Map对象与普通对象的区别
Map可以认为是Object对象的一种特殊表现形式,对象在堆中分配空间,Map也不例外;原创 2024-02-18 10:45:30 · 173 阅读 · 0 评论 -
JS引擎线程中,事件循环eventloop机制面试题
结果:原创 2024-03-20 12:46:47 · 549 阅读 · 0 评论 -
目录树穷举并过滤掉该路径关联最底层不符合要求的元素
1、最底层children为[]数组的元素该路径全部过滤。原创 2024-03-31 22:48:02 · 117 阅读 · 0 评论 -
flex绘制table表格,支持文字自动换行和合并单元格,高度自适应
flex绘制table表格,支持文字自动换行,高度自适应(宽度固定)原创 2024-07-07 17:09:26 · 208 阅读 · 0 评论 -
JavaScript中深拷贝的几种方法
1、cpu在堆内存中重新开辟一个存储空间,用于储存这个完全克隆一个一模一样的对象;2、在栈中会存储一个引用地址,用来指向新开辟的堆内存内容;3、改变原对象,新对象不会改变;1、不在堆内存中重新开辟空间,只复制拷贝对象栈内存中的引用地址。2、改变原对象,新对象会改变;3、本质上两个对象(数组)依然指向堆内存的同一块存储空间;原创 2024-07-25 00:01:48 · 154 阅读 · 0 评论