- 博客(22)
- 收藏
- 关注
原创 JavaScript事件循环(Event Loop)
JavaScript作为一门单线程语言,通过事件循环(Event Loop)机制实现非阻塞的异步编程模型。它解决了单线程环境下处理耗时操作(如网络请求、文件读写、定时任务等)时避免界面卡顿的问题。事件循环是JavaScript运行时的核心组成部分,负责协调同步任务与异步任务的执行顺序,确保程序高效且稳定地运行。现代浏览器开发者工具提供了“Performance”面板,可以可视化事件循环中的任务执行时间、调用栈和队列情况,帮助分析性能瓶颈。
2025-06-04 17:41:50
896
原创 Web安全:XSS、CSRF等常见漏洞及防御措施
XSS攻击指攻击者将恶意脚本(如JavaScript、HTML标签)注入到Web页面中,当用户访问该页面时,脚本在浏览器端执行,从而窃取用户信息、劫持会话或篡改页面内容。CSRF攻击利用用户已登录的身份,在用户不知情的情况下,通过第三方网站发送恶意请求到目标站点(如转账、修改密码)。当用户访问该页面时,浏览器自动向银行网站发送转账请求,若银行未验证CSRF令牌,则攻击成功。等多维度构建防御体系。需保持警惕,及时跟进最新漏洞与修复方案,才能有效降低风险。Web安全是攻防对抗的持续过程,需从。
2025-06-04 17:04:58
760
原创 浏览器兼容性问题及解决方法
浏览器兼容性需要从代码规范、测试工具、自动化处理、最佳实践等多方面综合解决。现代Web开发中,通过使用标准语法、自动化工具和渐进增强策略,可以显著降低兼容性问题。同时,持续关注浏览器市场份额和新特性支持情况,合理选择兼容性优先级(如放弃极低市场份额的旧版浏览器),是保持项目高效维护的关键。
2025-06-04 16:35:52
958
原创 浏览器从输入URL到页面渲染全解析
HTTP/2 允许服务器在发送 HTML 时,主动推送关联资源(如 CSS、图片),提前存入客户端缓存,减少加载时间。HTTP/1.1 采用串行请求模式,每个 TCP 连接只能顺序处理一个请求-响应,若前一个请求未响应,后续请求会因“队头阻塞(Head-of-Line Blocking)”而延迟。:协议语义(如方法、状态码)与 HTTP/1.1 完全兼容,服务器可通过 ALPN(应用层协议协商)与客户端协商升级至 HTTP/2。HTTP/2: 请求1、请求2、请求3 → 并行响应(多路复用)
2025-06-04 16:23:24
752
原创 CSS预处理器:Sass与Less的语法和特性(含实际案例)
通过变量、复用机制和动态逻辑,减少重复代码,提升样式可维护性,适配大型项目需求。:适合复用完整样式(如组件基础结构),但需注意过度继承可能增加选择器权重问题。:通过参数化混合宏快速生成不同风格的按钮,减少重复代码。:统一项目主色和字号,轻松修改主题色,避免重复硬编码。:复用卡片基础样式,通过继承减少冗余,仅覆盖差异部分。:自动生成栅格类,根据主题变量动态切换暗/亮模式样式。:适合根据变量动态调整单一属性,配合内置函数灵活度高。:减少选择器嵌套层级,代码更直观,适合复杂组件样式。语法,更贴近原生CSS。
2025-06-04 14:25:55
405
原创 前端开发三剑客:HTML5+CSS3+ES6
掌握HTML5的语义化与多媒体能力、CSS3的动画与响应式布局,以及ES6+的语法糖与模块化,不仅能构建功能完备的网页,还能为后续学习React、Vue等框架打下坚实基础。随着技术标准的不断演进,HTML5、CSS3以及ES6+(ECMAScript 2015及后续版本)带来了诸多新特性与语法优化,极大地提升了开发效率和用户体验。ES6(ES2015)及后续版本(ES7、ES8、ES9...)大幅简化了语法,增强了语言功能,提升了开发效率。:基于Promise的语法糖,使异步代码看起来同步,更易维护。
2025-06-04 11:27:39
849
原创 Vue项目代码分割策略:寻找黄金分割点的工程实践
代码分割的本质是用户体验的时空管理。通过建立「监控-分析-优化」的飞轮机制,结合Vue的特性实现动态调整。记住:没有完美的分割方案,只有持续优化的过程。当TTI降低30%时,用户留存率平均提升22%——这就是优化的真正价值所在。
2025-05-30 11:42:36
398
原创 Vue 3 中 defineProps 和 defineEmits 的使用与区别
用于声明组件接收的 props用于声明组件可以触发的事件Props 可以传递方法,但不推荐过度使用这种方式Props 是父到子的数据流,Emit 是子到父的事件通信update>xx是实现 v-model 双向绑定的底层机制。
2025-05-30 11:08:31
457
原创 使用pinia-plugin-persistedstate实现数据存储
如果需要自定义持久化行为,可以在注册插件时传入配置对象。// main.js 或 main.ts// 创建 Pinia 实例// 自定义持久化插件配置storage: sessionStorage, // 使用 sessionStorage 替代默认的 localStoragekey: (store) => `app_${store.$id}`, // 使用 store 的 id 作为存储键的前缀。
2025-05-30 10:19:59
997
原创 Vue 3 + TypeScript 项目路径别名跳转问题解决方案
在 Vue 3 + TypeScript 项目中,使用 VSCode 开发时,点击导入路径(如。运行 “TypeScript: Restart TS server” 命令。在 VSCode 中打开任意。如果项目有嵌套结构,在。确认能正确跳转到目标文件。)无法跳转到对应文件。
2025-05-26 11:34:49
450
原创 Vite 配置详解:构建现代化前端开发环境
本文档详细介绍了基于 Vite 的前端项目配置方案。以下配置提供了完整的开发服务器设置、构建优化、插件集成等功能。
2025-05-26 09:40:34
252
原创 Vite 的打包流程
通过 Rollup 分析模块依赖关系,生成模块图(module graph),并根据配置将代码打包为一个或多个 chunk。Vite 5.1 新增对 SSR 期间 HMR 的支持,允许在服务端渲染时热更新代码,提升开发体验。若打包失败,检查库版本是否兼容 Vite,或尝试升级 / 降级依赖。Vite 5.1 改进了循环导入的 HMR 处理,若仍有问题,可尝试手动拆分模块或调整依赖结构。中的 CommonJS/UMD 依赖转换为 ESM 格式,并缓存结果以加速后续构建。,移除未使用代码并按需加载模块。
2025-05-20 14:03:36
903
原创 nginx配置
本文介绍了Nginx服务器配置中的关键参数和规则,旨在优化性能、增强安全性并提升用户体验。主要内容包括:设置客户端请求头和请求体大小以优化内存使用和防止DoS攻击;配置TCP连接和超时时间以提高响应速度和节省资源;启用gzip压缩以提升传输效率;定义日志格式以记录访问信息;配置默认服务器和SSL以增强安全性;以及解析Nginx的核心匹配规则,包括精确匹配、优先前缀匹配、正则匹配和普通前缀匹配等。这些配置和规则帮助管理员根据需求调整服务器行为,确保高效、安全的服务运行。
2025-05-13 10:05:21
275
原创 Vue 常见面试题
通过全面掌握这些 Vue 核心知识点,开发者能够构建高效、可维护的 Vue 应用程序,充分利用框架提供的各种特性和优化手段。:作为 Observer 和 Compile 间的桥梁,触发更新函数。:用于定义对象属性的 getter 和 setter,实现数据劫持。:递归监听 model 数据的所有属性,将其转化为响应式对象。:当前路由信息对象,包含 path、params 等属性。:利用 URL 中的"#"符号,变化不会触发页面重载。:解析模板指令,初始化视图,并订阅数据变化。
2025-05-12 10:37:37
674
原创 replace详细使用
该方法的签名是:replace([RegExp|String],[String|Function])。该方法 返回一个新的字符串,但并不改变字符串本身。该方法接收2个参数,第一个参数可以是字符串,也可以是一个正则表达式;第二个参数可以是一个字符串,也可以是一个函数;
2025-05-08 11:10:42
574
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人