自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

你若盛开,清风自来

前端干货,学习交流,商务合作可私信,非诚勿扰

  • 博客(2541)
  • 资源 (1)
  • 收藏
  • 关注

原创 2025,我的人生双系统:工作以 Deep Focus 攻坚,生活以 Recharge Time 续航

2025年复盘:在烟火与诗意间舒展生长✨ 这一年以温泉疗愈开启,在潮汕年味与广府节奏间自如切换。健身轨迹贯穿始终(瑜伽/普拉提/拳击/游泳),身体与心灵同步升级。用livehouse音乐、IMAX电影和密室探险滋养灵魂,以簪花、卡丁车等新体验拓展边界。在代码与UI设计之外,更珍视茶艺馆静坐、艾灸调理等慢时光。从带娃吃酒楼到独自K歌,从禅柔课到九价疫苗,每个具体而微的日常都成为生命经纬。2025,没有宏大叙事,只有认真泡汤、举铁、吃烧烤的每一刻,在热气腾腾的生活里长成更丰盈的自己。🌿

2025-12-30 06:30:00 1751 1

原创 AIGC 与 Agentic AI:生成式智能与代理式智能的技术分野与协同演进

AIGC与Agentic AI并非对立的技术路线,而是人工智能向“内容”与“行动”两个维度的延伸。前者构建数字世界的“素材库”后者搭建自动化的“执行引擎”两者共同推动AI从“工具”向“伙伴”的角色转变。随着技术的成熟,未来的智能系统将呈现“感知-生成-决策-执行”的全链条融合,而人类将更多聚焦于创造性思考与战略决策,在人与AI的协作中开启新的生产力革命。

2025-03-30 17:01:26 1247 1

原创 DeepSeek R1与V3:混合架构下的推理革命与效率破局

DeepSeek R1与V3的组合,标志着大模型从**“参数竞赛"转向"能力深耕”**的新阶段。当V3的高效架构遇见R1的推理革命,AI正在从"概率匹配机器"进化为"逻辑引擎"。随着开源生态的完善和硬件适配的深入,这场由DeepSeek开启的推理革命,或将重新定义AI在科研、开发、决策等领域的价值创造方式。

2025-03-28 00:08:27 1395 1

原创 Manus:通用智能体的架构革命与产业破局

Manus的意义远超一款产品的诞生,它标志着AI从"辅助工具"向"数字劳动力"的跃迁。当多智能体架构能驾驭复杂任务流程,当工具链整合形成行业专属解决方案,人工智能正在重塑人类的生产方式。正如其名字所喻,这场革命不仅需要"脑力"的突破,更依赖"手力"的深耕——在算法与工程的共振中,一个由智能体驱动的新时代正在到来。

2025-03-28 00:06:02 1550 1

原创 OWL与技术文档工程:语义时代的知识结构化革命

当OWL从实验室走向工程实践,其意义早已超越技术本身——它标志着人类知识管理从信息罗列迈向智慧互联。正如万维网之父蒂姆·伯纳斯-李所言:“语义网的终极目标,是让机器像人类一样理解世界。”而OWL,正是这场革命中不可或缺的数字基因。在技术文档领域,它正在书写的,不仅是更清晰的说明书,更是一个能自我进化的智能知识体。

2025-03-28 00:02:14 1156 1

原创 Claude 3.7:混合推理架构如何重塑AI编程范式

Claude 3.7的意义远超模型迭代本身,它标志着AI从“工具”向“协作者”的进化。当混合推理架构能同时驾驭快速响应与深度思考,当代码生成工具能理解业务逻辑的前世今生,软件开发正从“人力密集型”转向“智力密集型”。随着Gartner预测2026年75%企业将采用AI开发范式,Claude 3.7不仅是一个技术里程碑,更是开启智能开发时代的钥匙。

2025-03-28 00:00:30 1370 1

原创 MCP:一种用于将大型语言模型(LLM)与外部工具和数据源集成的开放协议

Figma-MCP 是连接设计与 AI 的桥梁,通过标准化协议实现设计流程的智能化。虽然目前仍有局限,但其在自动化、一致性和协作效率方面的潜力已逐步显现。随着 AI 技术的发展,MCP 有望成为设计团队不可或缺的工具。

2025-03-27 23:53:51 1577

原创 2024:在生活与 CSDN 中探寻成长密码

🤍前端开发工程师、技术日更博主、已过CET6🍨、23年度博客之星前端领域TOP1🕠高级专题作者、打造专栏🍚签约作者、上架课程。

2025-01-20 08:00:00 4055

原创 腾讯云AI代码助手评测:智能编程新时代,你准备好了吗?

在本次开发案例中,我使用的是Windows 10操作系统,开发IDE为,编程语言为JavaScript,前端框架为Vue.js。腾讯云AI代码助手是基于混元代码大模型的辅助编码工具技术对话代码补全代码诊断代码优化它不仅支持100多种编程语言,还兼容和JetBrains等系列的主流IDE,为前端开发者提供全方位的支持,为开发之旅保驾护航。为了测试腾讯云AI代码助手,我们可以在中安装相应的插件。1️⃣打开,点击左侧的扩展图标2️⃣在搜索框中输入“” 或者 “腾讯云AI代码助手。

2024-08-01 08:00:00 2310 2

原创 【前后端实战项目】带你从入门到实战全面掌握 uni-app

uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架,具备"编写一次代码可发布到多个平台"的特点,大大的节省了开发成本,极速提升了开发效率。

2022-03-23 22:09:46 5158 4

原创 【前后端实战项目】Vue.js 和 Egg.js 开发企业级健康管理项目

选择 vue-cli3 ,是为了让开发者能够开箱即用快速地进行应用开发而开发的,它们秉承的是思想,简单说就是能不配置的就不配置,你就按照我的方式来,也不要去争论这个好不好,快速进行业务开发才是正经事。 它们不建议你去配置,但也不会拦着你去配置。

2020-10-16 15:05:44 3207 17

原创 深入理解 Vuex 中的this.$store.dispatch方法

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6🍨🕠 牛客高级专题作者、在牛客打造高质量专栏🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程。

2020-04-24 22:22:29 106730 6

原创 面试官:请你说一说vuex的五个属性,分别是什么,区别和用途说一下

今天面试的时候,有被问到vuex的五个属性,分别是什么,区别和用途说一下这个地方回答的不是很好,思路有点混乱所以就打算整理一下查了一下官网,关于vuex的五个属性还是有很多知识点的官网:https://vuex.vuejs.org/zh/guide/01 前言当我们用 Vue.js 开发一个中到大型的单页应用时,经常会遇到如下问题:如何让多个 Vue 组件共享状态??V...

2020-04-08 22:14:50 17003 13

原创 Webpack常用配置项详解

本文详细介绍了Webpack常用配置项及其作用。Webpack作为现代前端开发的核心工具,通过entry配置入口文件,output定义输出路径和文件名,module设置文件处理规则,plugins扩展构建功能,mode指定开发/生产环境,以及resolve优化模块解析。合理配置这些选项能够定制化打包流程,提升项目性能和可维护性。掌握这些配置有助于开发者高效使用Webpack进行项目构建,满足不同开发需求。

2026-01-02 06:30:00 1341

原创 Webpack 常用插件深度解析

本文介绍了Webpack常用插件及其应用场景。主要包括HTML处理插件(HtmlWebpackPlugin、HtmlWebpackExcludeAssetsPlugin)、文件压缩插件(TerserWebpackPlugin、OptimizeCSSAssetsPlugin)、资源管理插件(CleanWebpackPlugin、CopyWebpackPlugin)以及开发辅助插件(HotModuleReplacementPlugin、FriendlyErrorsWebpackPlugin)。这些插件能够优化构

2026-01-02 05:30:00 999

原创 Webpack 中的全局函数:原理、实现与应用

本文探讨了如何在Webpack中实现全局函数及其应用场景。通过externals配置和ProvidePlugin插件,可以避免直接操作全局对象,实现模块间的函数共享。全局函数适用于工具函数、第三方库和跨模块通信等场景,但需注意命名冲突和合理使用。Webpack的这些高级特性既能优化代码管理,又能提升打包性能,为现代前端开发提供了更多可能性。

2026-01-01 06:30:00 1646

原创 Webpack 命名空间:实现模块隔离与代码组织

本文深入探讨了Webpack中命名空间的实现方式与应用场景。文章介绍了四种实现命名空间的方法:ES6模块语法、CommonJS模块语法、externals配置和DefinePlugin插件,并提供了详细的代码示例。命名空间能有效避免命名冲突、实现模块化开发、优化打包性能并支持跨模块通信。作者建议合理使用命名空间,注意避免全局变量污染和兼容性问题,根据项目需求选择适当实现方式。通过本文,读者可以掌握Webpack命名空间的核心概念和实践技巧,提升代码组织能力和开发效率。

2026-01-01 05:30:00 784

原创 依赖注入的作用:解耦、测试与可维护性

依赖注入(DI)的作用及实现方式 依赖注入是一种解耦组件、提升代码可维护性的设计模式。其核心作用包括: 解耦组件:通过外部注入依赖,避免直接实例化,降低耦合度; 提高可测试性:支持替换为Mock对象,便于单元测试; 灵活生命周期管理:支持单例、瞬态等模式; 简化配置:集中管理依赖配置,动态调整组件行为。 实现方式分为手动实现(自定义容器管理依赖)和框架集成(如Angular内置DI)。通过依赖注入,代码更模块化、易于扩展和维护。 (摘要字数:150字)

2025-12-31 06:30:00 907

原创 依赖注入:原理、实践与优势

摘要: 依赖注入(DI)是一种解耦代码、提升可测试性的设计模式,通过外部容器管理组件依赖关系。本文解析了DI的三种实现方式(构造器、属性、方法注入),并阐述了其核心原理——依赖注入容器(DIC)的注册、解析与注入流程。DI的优势包括降低耦合度、增强可测试性、支持灵活生命周期管理及简化配置。文章对比了手动实现DI容器与框架(如Angular/Spring)的差异,并推荐最佳实践:优先构造器注入、避免过度依赖、基于接口抽象及集中配置管理。通过合理应用DI,可显著提升代码质量和可维护性。

2025-12-31 05:30:00 601

原创 深入理解Vue中的MVVM模式

摘要: Vue.js 基于 MVVM(Model-View-ViewModel)模式,通过数据绑定和响应式机制实现高效开发。Model 管理数据,View 负责界面展示,ViewModel(Vue 实例)作为桥梁,自动同步两者。Vue 利用 v-model 实现双向绑定,并通过 Object.defineProperty 监听数据变化,触发视图更新。MVVM 模式的优势包括:减少手动 DOM 操作、提升代码可维护性、便于单元测试。理解 MVVM 有助于更好地运用 Vue 特性,构建高质量前端应用。

2025-12-30 06:30:00 781

原创 Vue源码中的设计模式剖析

Vue.js源码中巧妙运用了多种设计模式:观察者模式实现数据响应式(通过Dep和Watcher机制);发布-订阅模式用于事件总线通信;工厂模式通过Vue.extend()创建组件实例;单例模式确保根Vue实例唯一性。这些模式共同构成了Vue的核心架构,提升了代码的可维护性和扩展性。理解这些设计模式有助于深入掌握Vue工作原理并提升开发能力。

2025-12-30 05:30:00 1350

原创 使用 JavaScript 匹配 URL 中的查询参数(Search Content)

本文介绍了JavaScript中提取URL查询参数的两种方法。首先分析了URL查询参数的结构(?后以&分隔的键值对),然后提供了手动解析的实现思路:提取查询字符串、分割键值对、解析存储到对象。接着展示了使用现代API URLSearchParams的更简洁方案,并比较了其性能优势和兼容性考虑。两种方法都能有效获取URL参数,但推荐优先使用URLSearchParams,必要时进行兼容性处理。该技术对实现动态页面、表单提交等功能至关重要。

2025-12-29 06:30:00 875

原创 监听浏览器中所有资源的加载进度:方法与实践

本文探讨了监听浏览器资源加载进度的多种方法,旨在优化用户体验和性能分析。主要介绍了四种实现方式:1)通过load和DOMContentLoaded事件获取基本加载阶段;2)利用Performance API获取详细性能数据;3)通过MutationObserver、Service Worker或Fetch API拦截资源请求实现实时监听;4)使用第三方库快速实现可视化进度条。文章指出,开发者应根据具体需求选择合适方法,结合这些技术可有效优化页面性能、提升用户体验并处理加载异常。

2025-12-29 05:30:00 1847

原创 Web Worker:突破JavaScript单线程限制的高效方案

摘要: Web Worker是HTML5提供的多线程技术,通过在后台线程执行脚本解决JavaScript单线程瓶颈,提升Web应用性能。其核心原理基于主线程与Worker间的postMessage通信,支持复杂计算、数据处理等耗时任务并行处理,避免页面卡顿。Web Worker分为专用Worker和共享Worker两种类型,适用于图像处理、数据分析、后台轮询等场景。优势包括性能优化、资源利用率提升和逻辑解耦,但也存在通信开销、编程复杂度及兼容性限制。合理使用Web Worker能显著改善用户体验,是高性能W

2025-12-28 06:30:00 735

原创 Web Components:重塑Web开发的组件化技术

Web Components是Web原生组件化解决方案,由Custom Elements、Shadow DOM和HTML Templates三大核心技术构成。它支持创建可复用、独立封装的HTML标签,具有跨框架兼容性和渐进式升级优势,适用于UI组件库、微前端架构等场景。尽管面临浏览器兼容性和调试挑战,但随着技术发展,Web Components将推动Web应用向更高效、灵活的方向演进。

2025-12-28 05:30:00 977

原创 零宽字符:不可见的力量及其作用

零宽字符是Unicode中一类不可见的特殊字符,在文本处理、语言支持和网络安全中具有重要作用。本文介绍了零宽字符的定义和常见类型(如零宽空格、连接符等),探讨了其在文本格式化、语言显示控制、内容隐藏等场景的应用,同时分析了可能带来的安全风险,如隐藏恶意内容或绕过安全检查。最后提供了检测和移除零宽字符的代码示例,建议开发者对用户输入进行清理以避免安全隐患。掌握零宽字符的特性有助于开发更安全的文本处理功能。

2025-12-27 22:28:59 1158

原创 零宽字符:揭秘不可见的字符世界

零宽字符是Unicode中一类特殊的不可见字符,虽然不占据显示空间,但对文本处理和网络安全有重要影响。本文介绍了零宽字符的定义、常见类型(如零宽空格、连接符等)及其在文本格式化、语言支持和编程中的应用。同时指出其潜在安全风险,包括隐藏内容、钓鱼攻击等,并提供了检测和移除零宽字符的JavaScript代码示例。开发者应重视对用户输入的清理,采用安全文本处理库,以防范相关风险。掌握零宽字符知识有助于编写更安全可靠的代码。

2025-12-27 22:28:03 564

原创 页面停留时长埋点实现技术详解

本文详细介绍了如何通过埋点技术实现用户页面停留时长的收集与分析。文章从原理出发,阐述了基于页面加载和卸载事件的时间差计算逻辑,并提供了前端实现方案(包括普通页面和SPA应用的特殊处理)。后端部分介绍了数据接收接口设计和MongoDB存储方案。最后强调了数据可视化与分析的重要性,指出停留时长数据对产品优化和运营决策的关键价值。全文150字,完整覆盖了技术实现路径与业务应用场景。

2025-12-27 22:27:08 1087

原创 实现埋点收集用户页面点击事件技术指南

摘要: 本文详细介绍了点击事件埋点的实现方法,从前端事件监听到后端数据处理。前端通过HTML事件属性、JavaScript动态监听、事件代理等方式捕捉点击行为,并展示了React/Vue框架中的实现方案。后端以Node.js为例,设计接收接口处理JSON数据,完成用户行为数据的采集与分析。该技术为优化产品体验提供了重要数据支持。(149字)

2025-12-27 22:25:32 1042

原创 大文件下载的实现技术

本文探讨了大文件下载的技术实现与优化策略。文章首先分析了大文件下载面临的网络带宽限制、内存占用和服务器负载等挑战,随后详细介绍了分片下载、断点续传和多线程下载三大核心技术原理。在实现方案部分,分别阐述了前端通过Range头实现分片下载、进度显示和暂停功能的方法,以及后端支持断点续传和文件分块读取的技术要点。最后提出了缓存机制、限速处理和文件校验等优化策略,强调通过综合应用这些技术可以有效提升大文件下载的效率和稳定性,改善用户体验。

2025-12-25 06:30:00 1270

原创 大文件上传的技术实现方案

本文详细探讨了大文件上传的技术实现与优化策略。首先分析了传统文件上传方式在处理大文件时存在的网络稳定性、服务器压力和用户体验等局限性。然后介绍了核心技术原理,包括文件分块、断点续传和并行上传。文章提供了具体的前后端实现方案,前端通过File API分块和XMLHttpRequest上传,后端使用Node.js接收合并文件块。最后提出进度显示、限速处理、文件校验和负载均衡等优化策略,以提升上传效率和用户体验。这些方法有效解决了大文件上传的挑战,为开发高性能文件上传功能提供了完整解决方案。

2025-12-25 05:30:00 1099

原创 为什么Array是可迭代的,而Object是不可迭代的?

本文探讨了JavaScript中Array可迭代而Object不可迭代的原因。Array因其有序索引特性,通过实现Symbol.iterator支持高效迭代;而Object由于键值对的无序性和动态性,默认不实现迭代器。文章分析了语言设计、性能优化和历史背景等因素,并提供了使Object可迭代的两种方法:自定义Symbol.iterator或使用Object.entries/values转换为数组迭代。理解这种差异有助于开发者合理选择数据结构,编写更高效的代码。

2025-12-24 06:30:00 2164

原创 将 `Object` 变为可迭代对象:方法与实践

摘要: JavaScript中Object默认不可迭代,但可通过实现Symbol.iterator方法使其支持for...of循环。本文解析了对象不可迭代的原因(无序性、动态性及性能考虑),并详细介绍了三种实现方式:1)自定义迭代器,返回键值对或值;2)利用Object.entries/Object.values间接迭代;3)结合Object.keys或Reflect.ownKeys遍历键名。还探讨了高级用法(如仅迭代值或键)及适用场景,为处理对象迭代需求提供了灵活解决方案。

2025-12-24 05:30:00 1639

原创 深入理解 JavaScript 中的 Symbol 特性

本文详细介绍了ES6引入的Symbol数据类型。作为JavaScript中的一种原始类型,Symbol具有独一无二性和不可枚举性,使其成为解决属性名冲突、模拟私有属性的理想选择。文章探讨了Symbol的基本特性、使用场景(如定义常量、元编程)以及获取Symbol属性的方法(Object.getOwnPropertySymbols()和Reflect.ownKeys())。通过掌握Symbol,开发者可以编写更健壮、灵活的代码,特别是在大型项目中处理对象属性时具有独特优势。

2025-12-23 06:30:00 2676

原创 深入探究 JavaScript 中 Symbol 的实现方式

摘要: JavaScript中的Symbol是一种ES6引入的原始数据类型,具有唯一性,常用于避免属性名冲突。通过Symbol()函数创建,可添加描述但不影响唯一性。Symbol作为对象属性名时不可枚举,需用Object.getOwnPropertySymbols()获取。内置Symbol如Symbol.iterator定义迭代行为,Symbol.toStringTag定制对象标签。利用Symbol的不可枚举性可模拟私有属性,增强封装性。掌握Symbol特性可优化代码结构,提升健壮性和可维护性。

2025-12-23 05:30:00 816

原创 Promise 的并发控制:方法与实践

本文介绍了JavaScript中Promise的并发控制方法,包括Promise.all、Promise.allSettled、Promise.race以及结合async/await和第三方库p-limit的动态并发控制。这些方法各有特点,适用于不同场景:Promise.all适合并行独立任务,Promise.allSettled保证所有任务完成,Promise.race仅获取首个结果,而动态控制方法能优化资源使用。开发者需根据任务特性选择合适方案,以提升异步编程的效率和可靠性。

2025-12-22 06:30:00 1535

原创 同时发起多个异步任务:方法与实践

摘要: 本文探讨了现代JavaScript中并发处理多个异步任务的方法。介绍了Promise.all(并行执行,任一失败即终止)、Promise.allSettled(等待所有任务完成,不中断)、Promise.race(仅取首个结果)等原生方案,并分析了其优缺点。针对动态控制需求,提出结合async/await与循环或并发控制的进阶实现,如分批次执行(for...of)和限制并发数(Promise.all+任务池)。最后强调根据场景选择策略:独立任务用Promise.all,需容错时选Promise.al

2025-12-22 05:30:00 1470

原创 控制函数不可被 `new` 调用的方法与实践

本文介绍了三种方法控制JavaScript函数不能被new操作符调用: instanceof检查:在函数内部检查this是否为实例,抛出错误阻止new调用。 命名约定:通过大小写区分构造函数和普通函数,但仅作为开发规范,无法强制限制。 Symbol标记:使用唯一Symbol属性标记,仅在特定创建方式下允许调用。 这些方法各有特点,开发者可根据实际需求选择合适的方式,确保函数按预期方式使用,提高代码健壮性。

2025-12-21 06:30:00 1145

原创 深入解析函数的二义性:概念、成因与解决策略

摘要: 函数二义性是编程中因编译器无法明确调用目标函数而导致的语义模糊问题。主要表现为同名函数参数匹配模糊(如C++重载函数参数类型冲突)和继承体系中的多态冲突(如多重继承同名方法调用歧义)。其成因包括语言特性(重载、继承)、代码设计缺陷及隐式类型转换规则。不同语言表现各异:C++常见于重载和模板实例化;Java出现在接口默认方法冲突;Python则与动态特性相关。解决方法包括明确函数定义、使用命名空间限定、规范代码审查流程等。理解并规避函数二义性对提升代码健壮性和可维护性具有重要意义。

2025-12-21 05:30:00 1419

原创 void 0 的作用是返回 undefined

void 0是JavaScript中的特殊表达式,主要有三个用途:1)获取稳定的undefined值,避免undefined被重写的问题;2)防止表达式求值,常用于IIFE等场景;3)在HTML链接中作为占位符阻止跳转(如<a href="javascript:void(0)">)。虽然现代JavaScript中void 0的使用有所减少,但理解其原理有助于阅读老代码和掌握语言特性。

2025-12-20 06:30:00 564

一个月学会JavaScript.pdf

编程世界里只存在两种基本元素,一个是数据,一个是代码。编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力。 数据天生就是文静的,总想保持自己固有的本色;而代码却天生活泼,总想改变这个世界。 你看,数据代码间的关系与物质能量间的关系有着惊人的相似。

2020-04-07

空空如也

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

TA关注的人

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