- 博客(21)
- 收藏
- 关注
原创 Vue 3 的响应式原理
监控数据访问get):记录谁在关注这个数据。监控数据修改set):通知所有关注者更新。自动化管理依赖:开发者只需关注数据变化,视图自动同步。通过Proxy的强大能力,Vue 3 解决了 Vue 2 的诸多限制(如数组和新增属性的响应问题),同时提升了性能和开发体验。
2025-04-05 21:33:25
1056
原创 TypeScript 提供的“类型工具箱”——工具泛型(Utility Types)
工具泛型是 TypeScript 提供的“类型工具箱”,帮助你快速操作类型,避免重复代码。它们本质是“类型的函数”,输入一个类型,输出另一个类型。通过组合这些工具泛型,可以写出更灵活、更安全的类型代码。
2025-04-04 20:14:59
295
原创 Vue 3 Composition API 的设计思想
Composition API 的核心设计思想是通过函数组合与响应式状态管理,实现逻辑的高内聚、低耦合。它解决了 Options API 在复杂场景下的代码组织问题,同时为 TypeScript 和逻辑复用提供了更优雅的方案。这种设计使得 Vue 3 既能适应简单应用,也能优雅地扩展至大型项目。
2025-04-03 15:07:11
1013
原创 Reflect.ownKeys 是 JavaScript 中 最彻底的对象属性扫描器
Reflect.ownKeys 就像一把 “万能钥匙”,能一次性拿到对象自身的 所有属性名(包括字符串、Symbol、不可枚举属性),没有遗漏,没有过滤。是 JavaScript 中 最彻底的对象属性扫描器,专治各种“隐藏物品”(Symbol、不可枚举属性),保证你的操作不留死角!
2025-04-02 17:09:34
298
原创 前端原型机制详解与示例
每个 JavaScript 对象都有一个隐藏的属性(可通过__proto__访问),它指向另一个对象(原型对象)。当访问对象的属性时,如果对象本身没有这个属性,就会去原型对象上查找。概念访问方式作用构造函数原型存储共享属性和方法实例原型链instance.proto实现继承的查找链所有对象的最终原型包含toString()等基础方法理解原型机制是掌握 JavaScript 面向对象编程的关键,它解释了为何即使没有类的语法,JavaScript 仍能实现强大的继承和复用特性。
2025-03-31 11:32:20
275
原创 CSS Modules和 CSS-in-JS是现代前端开发中用于解决样式冲突、实现组件级别样式隔离的核心技术
和是现代前端开发中用于解决样式冲突、实现组件级别样式隔离的核心技术,下面详细解析它们的原理、用法和适用场景。
2025-03-27 10:32:18
829
原创 微前端 qiankun 的沙箱隔离机制
qiankun 的沙箱隔离实现主要通过和两种机制,确保微前端子应用之间的运行时环境独立,避免全局变量、样式等冲突。
2025-03-27 10:11:31
976
原创 前端数据缓存机制详解
是提升应用性能、减少网络请求、优化用户体验的关键技术手段。通过 HTTP 协议头控制缓存,适用于静态资源(如 JS、CSS、图片)和接口响应。适用于存储大量结构化数据(支持索引、事务),容量可达数百 MB。适用于单页应用(SPA)中短期数据缓存,随页面刷新失效。适用于存储结构化数据,容量约 5~10MB,分为。实现离线缓存和网络请求拦截,适合 PWA 应用。
2025-03-26 11:00:42
2724
原创 前端工程中解决页面请求接口的大规模并发问题的多维方案
通过以上策略,前端可以在用户侧显著降低无效请求、减少服务端压力,同时提升用户体验。需注意根据业务场景权衡优化粒度(例如过度缓存可能导致数据不一致),并与后端架构形成协同效应。在前端工程中解决页面请求接口的大规模并发问题,核心目标是通过减少请求数量、优化请求效率、降低服务端压力,并结合浏览器特性提升用户体验。
2025-03-26 10:28:55
1137
原创 三种主流技术方案实现前端页面截图
在前端实现页面截图可以通过以下方法实现,主要依赖第三方库(如)或现代浏览器 API(如Web API是一个流行的库,可以将 DOM 元素转换为 Canvas,进而生成图片。
2025-03-25 11:40:19
1029
原创 WebFont(网络字体)优化与性能处理方案
在网页开发中使用WebFont(网络字体)可以提升设计美感,但同时也可能带来性能、兼容性、加载体验等问题。通过上述策略,可以在保证设计效果的同时,最大程度减少WebFont对性能的影响,提升用户体验。
2025-03-25 11:06:31
1043
原创 函数式编程思想一文详解
现代语言(如Scala、Rust、JavaScript)普遍融合了函数式特性,开发者可根据场景灵活选择范式。为核心理念的编程范式,它强调通过纯函数、不可变数据和高阶抽象来构建程序。与命令式编程(关注“如何做”)不同,函数式编程更关注“做什么”,通过组合函数实现逻辑。强类型语言(如Haskell)通过类型确保逻辑安全,范畴论中的函子(Functor)、单子(Monad)等概念帮助处理副作用(如IO、异常)。函数是唯一的“操作单元”,所有逻辑均可通过函数抽象表达。接收或返回函数的函数,如。
2025-03-24 17:45:52
882
原创 常见的图片性能优化方案和最佳实践
优化方案需根据实际场景权衡质量、兼容性和性能。通常组合使用多种策略(如WebP格式 + 懒加载 + CDN),并通过自动化工具落地。最终目标是在保证视觉效果的前提下,最小化图片体积和请求数。
2025-03-24 17:39:48
940
原创 Vue3 的核心原理简单易懂,一文搞定
Vue3 仍然使用虚拟 DOM,但通过编译阶段的优化信息,让 Diff 算法更高效。Vue3 的模板编译器在编译阶段做了大量优化,提升运行时性能。通过以上机制,Vue3 在性能、体积和开发体验上都有显著提升!函数和组合式 API,解决了 Vue2 中逻辑复用的痛点。修饰符、过渡组件)不会被打包到生产环境中,减少代码体积。Vue3 的模块是“按需引入”的,未使用的功能(如。),它能更高效地追踪数据变化。Vue3 的响应式系统基于。实现(Vue2 用的是。
2025-03-20 17:33:32
1215
原创 巧用CSS实现各种形状的三角形
巧用CSS实现各种形状的三角形先看效果,选择你所需要的形状实现原理上干货(与上面图片一一对应哦~)先看效果,选择你所需要的形状实现原理使用border实现,通过显示隐藏不同方向的border来实现不同形状的三角形上干货(与上面图片一一对应哦~)<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> &l
2021-04-08 21:03:21
203
原创 数据库加压之JMeter篇
数据库加压之Jmeter篇前言:在整个软件开发的过程中,我们希望尽可能的在前期将bug暴露出来,一来到后期bug的影响范围可能变大,甚至影响底层架构,推翻重做太过“损伤元气”,二来前期解决可以大幅度节约成本,毕竟涉及资本运作。所以在软件设计定稿后就可以着手数据库加压工作了,根据业务场景...
2021-03-27 19:25:50
448
原创 GitLab Runner&shell方式实现代码门禁
GitLab Runner&shell方式实现代码门禁一、准备工作1.一台linux服务器2.安装maven(尽量安装高版本以减少不必要的麻烦)3.安装git (尽量安装高版本以减少不必要的麻烦)4.已经安装好环境的话,不同项目直接在上面注册属于自己的runner即可,从第三步开始看就行二、安装gitlab-runner一定要安装 GitLab Runner 10及其以上版本,亲测低版本有问题,还不报错高版本安装命令如下curl -L https://packages.gitlab
2021-03-25 22:44:14
2514
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人