自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 浏览器渲染总结

reflow 的本质就是重新计算 layout 树。当进行了会影响布局树的操作后,需要重新计算布局树,会引发 layout。为了避免连续的多次操作导致布局树反复计算,浏览器会合并这些操作,当 JS 代码全部完成后再进行统一计算。所以,改动属性造成的 reflow 是异步完成的。也同样因为如此,当 JS 获取布局属性时,就可能造成无法获取到最新的布局信息。浏览器在反复权衡下,最终决定获取属性立即 reflow。repaint 的本质就是重新根据分层信息计算了绘制指令。

2026-01-08 10:54:16 419

原创 css 总结

一说到 CSS 盒模型,这是很多小伙伴耳熟能详的知识,甚至有的小伙伴还能说出 border-box 和 content-box 这两种盒模型的区别。但是一说到 CSS 包含块,有的小伙伴就懵圈了,什么是包含块?好像从来没有听说过这玩意儿。好吧,如果你对包含块的知识一无所知,那么系好安全带,咱们准备出发了。包含块英语全称为,实际上平时你在书写 CSS 时,大多数情况下你是感受不到它的存在,因此你不知道这个知识点也是一件很正常的事情。

2026-01-07 15:16:02 207

原创 http 总结

HTTP1.0:解决基础通信问题,但单连接模型导致性能瓶颈HTTP1.1:引入长连接和管道化,但队头阻塞问题依然存在HTTP2.0:通过二进制分帧和多路复用提升并发性能,但TCP层瓶颈未解决HTTP3.0:基于QUIC协议重构传输层,彻底解决队头阻塞,实现连接速度、安全性和网络适应性的全面升级随着5G、物联网和实时交互应用的快速发展,HTTP3将逐渐成为互联网传输的主流协议,为用户带来更快速、稳定和安全的网络体验。

2026-01-07 14:57:29 262

原创 前端弱网环境与离线包面试知识点汇总

离线可用:通过Service Worker缓存资源,无网络时仍能访问核心功能类原生体验:可安装到桌面,具备全屏模式、启动动画等原生应用特性后台同步:离线时的操作可在网络恢复后自动同步到服务器Service Worker是浏览器在后台独立运行的脚本,独立于网页主线程。可拦截网络请求,实现离线缓存策略支持消息推送(不依赖页面打开)实现后台同步功能,确保离线操作不丢失。

2026-01-04 14:45:08 262

原创 前端-虚拟dom 总结

虚拟DOM是一个轻量化的JS对象,用于描述真实DOM的结构和属性。它是真实DOM的抽象表示,通过Diff算法计算最小更新范围,再由渲染器(如ReactDOM)将变化应用到真实DOM。

2026-01-04 11:04:28 260

原创 前端原子化架构-学习中

前端原子化架构是一种高效的开发范式,它通过将UI拆分为最小的可复用组件,极大地提升了开发效率和可维护性。原子化设计不仅适用于UI组件,还可以扩展到状态管理、工具链等多个层面,形成完整的原子化开发体系。快速构建高质量的界面提高代码复用性和可维护性降低团队协作成本应对复杂前端项目的挑战原子化架构已经成为现代前端开发的主流趋势,学习和掌握它将为你的前端开发能力带来质的飞跃。

2026-01-02 18:28:41 895

原创 vue 面试题总结

参考答案:bind: 只调用一次,指令第一次绑定到元素时调用,用这个钩子函数可以定义一个在绑定时执行一次的初始化动作。inserted: 被绑定元素插入父节点时调用(父节点存在即可调用,不必存在于 document 中)。update: 被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新(详细的钩子函数参数见下)。componentUpdated: 被绑定元素所在模板完成一次更新周期时调用。

2026-01-02 18:28:14 921

原创 设计模式学习与了解

解释:单例模式是一种常用的模式,有一些对象我们往往只需要一个,比如线程池、全局缓存、浏 览器中的 window 对象等。在 JavaScript 开发中,单例模式的用途同样非常广泛。试想一下,当我们单击登录按钮的时候,页面中会出现一个登录浮窗,而这个登录浮窗是唯一的,无论单击多少次登录按钮,这个浮窗都只会被创建一次,那么这个登录浮窗就适合用单例模式来创建。

2025-12-31 14:08:19 373

原创 webpack-优化

是使用commonjs规范编写的,并且打包的规范是umd,简单来说,无论怎么样,如果我们引入了lodash,那么就会引入lodash中的全部内容。虽然有免费的次数,看着有好几百次免费,不过在现实的线上环境就是瞬间的事情…依赖于 ES6 的模块特性,ES6 模块依赖关系是确定的,和运行时的状态无关,可以进行可靠的静态分析,这就是 tree-shaking 的基础。当然,也可以前端或者后端人员,将文件提前压缩好,就保存在服务端,需要用的时候直接返回,这就避免了每次请求响应的时候都要压缩的问题,这个其实就是。

2025-12-31 14:07:31 921

原创 webpack-代码分割

对于动态导入和路由懒加载会自动拆包的问题,相信大家都知道,不过现在有个问题是,自动拆包出来的文件名可能并不是我们想要的,这其实也是由于默认配置的原因。执行了该过程,应用程序的整个大小依然保持不变。但是一些第三方模块本身是基于ES Module的,甚至自身也有一些动态导入,所以对于这部分的模块,简单的module.size()并不足以能判断,可以将这部分的内容再单独处理。默认情况下,它只会影响到按需加载的 chunks,因为修改 initial chunks 会影响到项目的 HTML 文件中的脚本标签。

2025-12-30 14:17:45 692

原创 LeetCode-无重复字符的最长子串

无重复最长子串

2025-12-30 11:43:19 82

原创 LeetCode-两数相加

两数相加

2025-12-29 16:40:01 128

原创 leetcode-两数之和

本文介绍了一个解决"两数之和"问题的JavaScript算法。该算法通过遍历数组,使用辅助数组存储已遍历元素,检查当前元素与目标值的差值是否存在于辅助数组中,从而快速找到满足条件的两个数。这种方法的时间复杂度为O(n),空间复杂度为O(n),相比暴力解法效率更高。文章提供了完整的函数实现代码,包括参数说明和返回值解释。

2025-12-29 16:05:07 92

原创 vue 组件通信的执行顺序问题

子组件的数据加载顺序和父组件的加载顺序都是按照vue生命周期钩子函数的顺序执行的但是当父子组件两边都进行数据处理时就是爆发出类似异步的问题、找了好久也没有发现问题所在直接就当作异步问题进行了处理,此处使用的是async 。。。await 的方式直接对函数的执行顺序进行处理才发先并没有解决问题。。。。。经过个人不断地研究和查看执行顺序终于想到了父子组件的影响、直接讲数据在父组件里进行处理之后传递给子组件就不会存在类似异步调用的问题了~~~~~~~~~本人超菜,高见请指教、但是不要喷我..

2020-11-04 17:26:43 1061

原创 2020-08-12

element-ui 使用table问题table组件使用一定要给他的列设置一个宽度如果自适应的话可以使用align、fixed属性

2020-08-12 10:28:27 93

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除