面试常问
文章平均质量分 61
码上跑者
每一行都经过推敲,每一个函数都如同精心调整的步频,
在重复中追求极致,在迭代中接近完美。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
从输入url到页面显示详细过程
本文详细介绍了浏览器访问网页的全过程:从输入URL开始,依次经历DNS解析、TCP三次握手建立连接、HTTP请求响应、TCP四次挥手断开连接,最后到浏览器渲染页面。其中重点解析了TCP三次握手和四次挥手的细节,以及浏览器渲染时构建DOM树、CSS规则树和Render树的过程。文章还深入分析了回流和重绘机制,并提供了减少回流重绘的优化建议,包括合并CSS修改、避免循环读取DOM属性、使用定位布局等。最后从HTML加载、CSS编写和JS标签使用三个方面给出了网页性能优化的具体方法。原创 2025-12-29 17:39:33 · 625 阅读 · 0 评论 -
Cookie、sessionStorage、localStorage 的区别
例如一个天气预报网站,能够根据用户选择的地区显示当地的天气情况。如果每次都需要选择所在地是烦琐的,当利用了 cookie 后就会显得很人性化了,系统能 够记住上一次访问的地区,当下次再打开该页面时,它就会自动显示上次用户所在地区的天气情况。(key:本身就是一个回话过程,关闭浏览器后消失,session为一个回话,当页面不同即使是同一页面打开两次,也被视为同一次回话)例如将用户 id 存储于一个 cookie 内,这样当用户下次访问该页面时就不需要重新登录了,现在很多论坛和社区都提供这样的功能。原创 2025-12-29 17:25:50 · 284 阅读 · 0 评论 -
React中调用 setState 之后发生了什么
React的setState触发状态更新流程:首先将新状态加入更新队列,启动Fiber算法的调和过程异步构建新元素树。通过diff算法对比新旧树差异,为节点打上更新标记。调度器按优先级执行doWork处理更新,最后在commit阶段批量更新DOM。整个过程实现了高效的按需渲染,而非全量重绘。原创 2025-12-23 10:08:11 · 431 阅读 · 0 评论 -
package.json 文件中的 devDependencies 和 dependencies对象有什么区别
前端项目的package.json 文件中,devDependencies和dependencies对象都用于指定项目所依赖的软件包,但它们在项目的开发和生产环境中的使用有所不同。原创 2025-12-23 09:41:15 · 367 阅读 · 0 评论 -
简述Vite 和 Webpack的区别
Vite和Webpack是两种主流前端打包工具,主要区别在于:Vite开发环境下采用原生ES模块加载,构建速度更快且配置简单,适合快速开发;Webpack配置复杂但功能全面,生态系统成熟,更适合生产环境的复杂应用打包。Vite目前生态仍在发展,而Webpack拥有丰富的插件支持。项目选择需根据具体需求,Vite侧重开发效率,Webpack强调功能完备性。原创 2025-12-19 16:55:33 · 395 阅读 · 0 评论
分享