自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

DeppBing的博客,全栈修炼记|记录一个开发者的进化轨迹

熟悉 HTML/CSS/JavaScript 以及 Vue、React 等主流框架,具备多年前端实战经验; 目前专注于 Java 后端技术栈,包括 Spring Boot、MySQL、MyBatis、接口开发、后端性能优化等内容。

  • 博客(58)
  • 收藏
  • 关注

原创 javascript多次for循环,跳出到指定for循环,或者直接跳出for循环

JavaScript跳出循环的4种方法:1. break+label标签可跳出指定外层循环;2. 单独使用break仅跳出当前内层循环;3. 在函数中使用return可直接跳出所有循环;4. 多个label可实现任意层级跳出(不推荐)。continue也可配合label跳过特定循环的某次迭代。这些方法适用于不同层级的循环控制需求,其中函数内return是最彻底的跳出方式。根据实际场景选择合适的方法,可使代码逻辑更清晰。

2025-08-04 10:55:36 1127

原创 javasccript Es5以后到目前为止更新方法功能总结,JavaScript各版本核心特性摘要(ES6-ES15)ES6(2015)是重大升级,引入let/const、箭头函数、模板字符串、解构

JavaScript各版本核心特性摘要(ES6-ES15) ES6(2015)是重大升级,引入let/const、箭头函数、模板字符串、解构赋值、Promise等核心特性。后续版本持续增强: ES7(2016):数组includes方法、指数运算符 ES8(2017):async/await异步方案、Object.values/entries ES9(2018):异步迭代器、正则增强 ES10(2019):数组flat/flatMap、Object.fromEntries ES11(2020):可选链?.、

2025-07-31 16:24:04 991

原创 java修饰符final

场景示例意图定义常量不可修改的全局量防止变量被意外修改提高代码安全性与意图表达禁止方法被重写保证父类逻辑不被子类改变禁止类被继承防止扩展,控制行为封装匿名内部类中使用局部变量JDK 8 之后必须是“有效 final”

2025-08-06 08:00:00 302

原创 一文彻底搞清楚:单例类、枚举类、抽象类、接口、设计模式

不完整的类,不能实例化,必须被继承。可以有方法的默认实现,也可以包含抽象方法(没有实现的方法)。学好这 5 个概念,你就从“写代码的人”开始向“设计系统的人”进阶了。

2025-08-06 08:00:00 552

原创 Java 枚举类详解:特点、语法、使用场景与最佳实践

Java枚举(enum)摘要 Java枚举是Java5引入的特殊类,继承自java.lang.Enum,具有类型安全、唯一实例、线程安全等特性。它支持自定义字段和方法,适用于状态码(如ResultCode)、有限类型列表(如Gender)、单例模式等场景。枚举可与switch配合使用,实现接口,或映射数据库值。其核心方法包括name()、ordinal()、values()等。使用时需注意:构造器必须私有、枚举值需首行定义、不支持继承其他类,且不适合动态扩展场景。枚举通过“数据+行为”的组合,提供更智能的模

2025-08-06 08:00:00 299

原创 java抽象类,抽象方法

摘要: 抽象类是不能实例化的类,用于定义通用行为模板,包含抽象方法(无方法体,需子类实现)和普通方法。规则包括:不可实例化但可有构造器、必须含抽象方法才需声明为abstract。典型应用如支付模板(模板方法模式)。与接口相比,抽象类支持方法体、成员变量和单继承,强调"is-a"关系,而接口定义行为规范。使用注意子类必须实现所有抽象方法,否则也需声明为abstract。抽象类提升代码复用和解耦,常与设计模式结合,增强扩展性。

2025-08-06 08:00:00 232

原创 java面向对象 -> 接口概念,好处,案例,jdk8后新增的方法,注意事项

摘要:接口是Java中定义行为规范的特殊引用类型,用于实现多态和解耦。JDK7之前的接口只能包含抽象方法和常量,而JDK8+新增了默认方法、静态方法和私有方法等特性。接口常用于业务规范、策略模式和多线程实现等场景,支持多继承但不可实例化。与抽象类相比,接口侧重"能做什么"的行为定义,而抽象类强调"是什么"的层次结构。开发中应优先使用接口进行解耦设计,其默认方法特性增强了代码复用性。

2025-08-05 15:18:49 233

原创 前端转java需要提前学明白的 class 类

本文介绍了前端开发者转向Java后端时需掌握的class类基础。Java作为强类型面向对象语言,其class概念与JavaScript有本质区别:Java类必须明确类型声明,支持多构造函数重载,严格管控访问权限(public/private等)。文章详细讲解了Java类的基本结构、对象创建、三大面向对象特性(封装、继承、多态)以及static关键字用法,特别对比了与JavaScript在类型系统、this指向、方法访问等方面的关键差异,帮助前端开发者建立正确的Java类思维模型。

2025-08-05 09:00:00 345

原创 Java static:高效编程的关键以及 static作用,语法,使用场景

使用场景描述工具类常见如MathArrays等共享数据所有对象共享同一变量,如计数器、缓存工具方法不依赖对象的方法,简洁高效静态初始化资源通过static {}快速初始化资源/连接池等常量类修饰全局常量static是 Java 的“全局共享”的核心机制 —— 它让你写出不依赖对象的工具逻辑,让程序更加高效和结构清晰。

2025-08-05 08:00:00 312

原创 Java继承:代码复用与多态的核心,| 记录

继承是一种子类自动拥有父类成员(变量和方法)的机制,是 Java 中实现代码复用和多态的基础。在 Java 中,使用extends关键字实现继承。Java 的继承是一种“是一个(is-a)” 的关系,它让我们能以最小代价扩展功能、复用代码、实现多态。

2025-08-05 08:00:00 340

原创 LeetCode 1. 两数之和,lettcode第一道题;还是花了些许时间的

本文介绍了三种实现两数之和算法的方法:1) JavaScript双重循环法,通过嵌套循环遍历数组寻找满足条件的元素对;2) JavaScript Map去重法,利用Map存储元素实现O(n)时间复杂度;3) Java HashMap实现,通过哈希表快速查找补数。三种方法的核心思想都是寻找数组中两个元素之和等于目标值的索引,其中哈希表方法效率最优。文章最后提供了Java实现的测试用例,验证了算法的正确性。这些方法展示了不同语言下解决同一问题的编程思路。

2025-08-04 09:56:41 183

原创 React 虚拟 DOM Diff 算法详解,Vue、Snabbdom 与 React 算法对比

React虚拟DOM Diff算法通过同层比较和键值匹配实现高效更新,核心思路包括:1)仅比较同一层级节点,跨层变化直接替换子树;2)类型不同则重建整个节点树;3)借助key匹配新旧节点,避免不必要的DOM操作。算法采用O(n)复杂度策略:先比较节点类型和key,相同则更新属性并递归diff子节点列表,否则重建子树。相比Vue的双端比较和编译优化,React更依赖开发者合理使用key来优化性能。该算法通过最小化DOM操作和最大程度复用节点,显著提升了渲染效率。

2025-08-02 09:30:00 599

原创 我的创作纪念日

用文章输出思考,也是成了我和各位交流的一种方式。也意识到,创作不仅能帮助别人,也是在反哺自己。每写一篇文章,其实都在夯实认知,查漏补缺。回想最初,是在一个实战项目推进中,遇到了一个bug。有一些朋友在评论区留言:“思路解决,方案优化,代码优化 等”,这让我觉得一切都值得。慢慢的,创作变得“自然”,不再是负担,而是一种输出快乐的方式。三 也想尝试一下视频创作,让我的创作内容触达更多人。一 能持续稳定地创作,

2025-08-01 10:57:10 291

原创 c3以后出的属性总结,css3后出这些新的属性;使用场景看看你知道多少;CSS3/4新增特性全面解析:从Flexbox到容器查询CSS3及后续提案带来了大量新特性,主要分为七大类:布局系统:

CSS3/4新增特性全面解析:从Flexbox到容器查询 CSS3及后续提案带来了大量新特性,主要分为七大类: 布局系统:Flexbox(一维)、Grid(二维)和Subgrid 视觉特效:filter毛玻璃效果、clip-path形状裁剪 响应式设计:容器查询、新版媒体查询 文本控制:多行截断(line-clamp)、字体加载优化 动画交互:路径动画(motion-path)、平滑滚动 状态管理:CSS变量、:has()父选择器 实用属性:宽高比控制(aspect-ratio)、表单主题色(accent-

2025-08-01 09:08:19 789

原创 ES5以后最重要的技术点TOP 8,重点学习方向推荐,ES5及后续版本为JavaScript带来重大革新

ES6及后续版本为JavaScript带来重大革新,核心变化包括块级作用域、箭头函数、异步处理(Promise/async/await)、模块化等。从ES6到ES13,每年版本迭代新增实用特性,如空值合并运算符、可选链、数组扁平化等语法糖。建议重点掌握ES6基础语法及异步编程方案,结合项目需求学习新特性。学习时需多实践,特别关注异步控制、数据结构和类相关功能,这些是现代化JS开发的核心要素。版本特性应按实际场景选择性应用,不必盲目追求最新语法。

2025-07-31 18:00:44 245

原创 WeakRef / FinalizationRegistry(高级内存管理) ES2021(ES12)

ES2021引入WeakRef和FinalizationRegistry用于内存管理。WeakRef创建不影响垃圾回收的弱引用,通过deref()访问可能被回收的对象,适合实现自动清理的缓存。FinalizationRegistry在对象被回收后触发回调,可用于资源清理。两者可用于高性能缓存、内存泄漏预防等场景,但需注意GC时机不确定的特性。

2025-07-31 16:03:52 186

原创 Promise.all Promise.race Promise.any三个对比

本文对比了三种Promise方法:Promise.all在所有成功时返回结果,任一失败则立即失败;Promise.race返回最快完成的结果(无论成功失败);Promise.any在任一成功时返回,全部失败则报AggregateError。这些方法适用于不同异步场景,需根据需求选择。

2025-07-31 15:59:00 132

原创 String.prototype.replaceAll() ES2021(ES12),replaceAll与replace区别;replaceAll语法和使用场景

JavaScript的replaceAll()方法详解:1. 语法为str.replaceAll(searchValue,replaceValue),支持字符串和正则表达式搜索;2. 与replace()的区别在于能一次性替换所有匹配项,无需使用正则的g标志;3. 实用场景包括模板字符串替换和文本清理(如去除换行符);4. 示例演示了普通字符串替换和特殊字符处理。该方法比传统的replace()更简洁高效,适合批量替换操作。

2025-07-31 15:55:13 159

原创 ES11 / ES2020 动态 import()(异步加载模块)

摘要:ES2020的动态导入语法import()支持异步按需加载模块,优化应用性能。其基本语法是返回Promise的import(modulePath),可用.then或await处理。主要应用于:1)按需加载减小初始包;2)条件加载不同模块;3)React/Vue懒加载组件;4)Webpack代码分割。动态导入返回模块对象,包含所有导出内容,通过.访问具体功能。语法简洁,能有效提升大型应用加载效率。

2025-07-31 15:49:19 198

原创 ES9 / ES2018 正则表达式增强

摘要:ES2018正则表达式新增4个实用特性:1️⃣ 命名捕获组(?<name>...),使匹配结果更易读;2️⃣ 后行断言(?<=...)实现反向条件匹配;3️⃣ s修饰符让点号.可匹配换行符;4️⃣ Unicode属性转义\p{}配合u标志可识别汉字、Emoji等字符类别。这些升级显著提升了正则表达式在处理复杂文本时的可读性和精确度,特别适用于日志分析、多语言文本处理等场景。

2025-07-31 15:13:56 271

原创 Promise 技术快速入门

摘要:Promise是处理异步操作的核心对象,具有pending/fulfilled/rejected三种不可逆状态。基础用法通过new Promise创建,结合then/catch处理结果。高级特性包括链式调用、async/await语法糖,以及Promise.all/race等多任务处理方式。文章还详细演示了如何从零实现一个MyPromise类,包含状态管理、then/catch方法、静态方法以及Promise.all功能实现,完整复现了原生Promise的核心机制。典型应用场景包括文件操作、API请求

2025-07-31 12:08:58 270

原创 class 类的语法技术点快速了解

JavaScript中的class是一种基于原型的封装语法,本质仍使用prototype和构造函数。基本语法包括constructor构造器、实例方法和静态方法(static)。类支持继承(extends)和super调用父类方法,ES2022新增私有字段(#前缀)。class语法比传统ES5写法更简洁,也可用于React类组件开发,通过extends React.Component实现组件定义。这种语法让面向对象编程更直观,但底层仍是JavaScript的原型继承机制。

2025-07-31 11:53:00 154

原创 Java、Node.js、Python 三者对比,以及使用场景和优劣势对比;列表可视化有助于更快选择

技术选型指南:Node.js、Java、Python 对比分析 使用场景: Node.js:轻量级后端、实时通信、前端工具链。 Java:企业级系统、高并发服务、金融领域。 Python:数据分析、AI、爬虫、快速开发。 优劣势: Node.js:学习曲线低、开发快,适合全栈和中小项目。 Java:性能强、生态成熟,适合大厂和高复杂度系统。 Python:语法简单、数据科学生态强,但并发性能较弱。 选择建议: 全栈/创业:Node.js 大厂/架构师:Java 数据/AI:Python 总结:根据目标选择,

2025-07-31 09:30:00 803

原创 nodejs在工作中使用场景,相比与java这些区别,学java和nodejs那个在工作中更优选

摘要: Node.js适合轻量级、快速迭代的场景,如RESTful API、BFF层、实时通信、SSR和工具开发,优势在于开发效率高、全栈JS统一语言,适合创业团队和中小项目。Java更适合企业级应用,如金融、电商、大型微服务和高并发系统,凭借Spring生态和稳定性,在大厂和传统行业更受欢迎。 选择建议: Node.js:前端转后端、初创项目、自由职业 Java:大厂/传统企业、架构师方向 组合路径: 初级全栈:Node.js + 前端框架 高级架构:Java + Spring + 分布式技术 总结: 中

2025-07-31 09:00:00 345

原创 nodeJS实现简单聊天室,附带加入,离开用户提醒;附带源码,共三个文件即可实现

多用户实时聊天应用功能演示 该聊天应用支持多用户同时在线交流。主要功能包括: 用户可创建多个标签页或浏览器窗口(如userQIIQ和userQIAIQA) 系统会自动通知用户加入情况(如userQIQI会收到QIAQIA加入提醒) 实时消息传递功能(用户发送消息后对方立即接收) 开源项目,可通过GitHub获取源代码(git clone https://github.com/23443414/chat-app.git) 该应用界面简洁直观,实现了基本的在线聊天功能,适合需要简单实时通讯的场景。

2025-07-30 14:51:34 242

原创 nodejs项目中常用的npm包及分类

本文分类介绍了Node.js开发中常用的NPM工具包,涵盖数据处理、Web开发、安全认证、数据库操作、构建工具、测试框架、文件处理、日志监控等9大类别。重点推荐了lodash、axios、express、mongoose、jest等核心工具,并对比了同类工具(如moment/dayjs)的特点。这些精选包可帮助开发者高效完成从API开发到安全防护的各项任务,是构建现代Node.js应用的必备工具集。

2025-07-30 10:01:16 424

原创 Nodejs模块分类详解及用处(chatGpt生成)共同学习

本文系统梳理了Node.js核心功能模块体系,分为基础功能、C++扩展、进程线程、网络协议、加密安全等12大类,涵盖assert断言到SQLite集成等50+模块。重点解析了各模块的核心功能与典型应用场景,如async_hooks用于异步追踪、cluster提升并发性能、crypto实现数据加密等,并标注了实验性功能(如permission权限控制)和特殊用途模块(如SEA单文件打包)。完整呈现了Node.js从基础I/O、进程管理到系统集成的全栈能力,为开发者构建高性能、可扩展应用提供模块化技术选型参考。

2025-07-30 09:40:05 516

原创 nodejs操作MySQL实现增删改查源码(涵盖对应注解,有助于更快捷入门 node & MySQL操作)

本文介绍了使用Node.js操作MySQL数据库的增删改查基本操作。通过mysql模块建立数据库连接,详细演示了四种操作:插入数据(增)使用占位符防止SQL注入;删除数据(删)通过指定ID删除记录;更新数据(改)根据ID修改字段值;查询数据(查)支持条件查询和字段筛选。代码示例中包含详细的连接参数配置说明和错误处理机制,涵盖了数据库操作的基本场景,为Node.js后端开发提供了基础参考。

2025-07-29 15:50:48 296

原创 gitHub克隆项目遇到 Failed to connect to github.com port 443 after 14602 ms: Could not connect to server 错误

摘要:解决无法连接GitHub的问题,提示端口443连接失败(超时14.6秒)。建议关闭公用网络防火墙,并附有操作界面示意图(来源优快云博客)。该方案适用于因防火墙限制导致的GitHub访问受阻情况。

2025-07-29 09:06:44 178

原创 前端学习node:nodejs链接MySQL数据库获取数据,带逐个字段详解意思

本文介绍了如何使用Node.js中的mysql模块连接MySQL数据库。通过创建连接对象,详细说明了各项连接参数的含义,包括用户名、密码、数据库名称、字符集等配置选项。代码演示了如何建立数据库连接并执行简单的SELECT查询,从test数据库的list表中获取数据,同时提供了错误处理机制。最后展示了查询结果的输出格式,包含多个RowDataPacket对象,每个对象代表表中的一行记录。该示例为Node.js操作MySQL数据库的基础实现。

2025-07-28 17:14:53 209

原创 MySQL安装时遇到的Initializing database错误无法继续安装

MySQL安装过程中出现日志乱码问题,需注意安装路径不能包含中文字符。解决方案是在安装第一步勾选"Show Advanced and Logging Options"高级选项,修改日志路径为纯英文后继续安装。安装完成后可通过开始菜单运行MySQL并输入密码验证是否成功。关键点在于确保所有安装路径和日志记录选项均使用英文路径,避免中文字符导致的乱码问题。

2025-07-28 15:37:18 395

原创 pnpm vs npm区别对比

pnpm 和 npm 是两种 JavaScript 包管理器,主要区别在于依赖管理方式。pnpm 采用内容寻址存储和符号链接技术,显著节省磁盘空间(约40%),提高安装速度,并保持清晰的 node_modules 结构,避免"幽灵依赖"问题。相比之下,npm 的扁平化结构可能导致依赖混乱。pnpm 还提供更好的 Monorepo 支持,但需要 Node 18+ 环境。对于大型项目,pnpm 是更优选择,而小型项目仍可使用熟悉的 npm。值得注意的是,pnpm 不兼容 npm 的 --le

2025-07-28 09:26:12 790

原创 win10桌面无法操作,鼠标悬浮桌面鼠标一直加载中;桌面什么图标也点不动

Win10桌面无法操作的常见解决方法包括:1.通过任务管理器重启explorer.exe进程;2.检查系统更新和驱动;3.禁用启动项和服务;4.卸载可疑第三方软件;5.使用系统还原;6.查看事件日志;7.病毒扫描。多种原因可能导致此问题,建议依次尝试上述方法,必要时进入安全模式排查。操作前注意备份重要数据,若问题持续建议寻求专业帮助。

2025-07-22 15:29:36 139

原创 根据 ant-design-vue 加 vue3技术自定义车牌号选择组件

根据 ant-design-vue 加 vue3技术自定义车牌号选择组件

2025-03-30 16:13:10 239

原创 vben-admin 页面切换清除缓存亲测有效

vben-admin 页面切换清除缓存亲测有效

2025-02-21 09:19:54 254

原创 src/views/Search/index.vue: At least one <template> or <script> is required in a single file compone

src/views/Search/index.vue: At least one or is required in a single file compone

2025-01-15 18:15:39 136

原创 编译报错:“import ... =“ 只能在 TypeScript 文件中使用 ———不更改vscode配置

编译报错:“import ... =“ 只能在 TypeScript 文件中使用 ———不更改vscode配置

2025-01-14 12:03:47 316

原创 请求接口时报错 Maximum call stack size exceeded

请求接口时报错Maximum call stack size exceeded

2025-01-02 11:43:47 213

原创 设置前端水印不可被调试更改dom样式,删除dom元素都将调用;MutationObserver

设置前端水印不可被调试更改dom样式,删除dom元素都将调用;MutationObserver

2024-12-30 15:23:21 242

原创 前端实现添加水印功能

【代码】前端实现添加水印功能。

2024-12-24 16:31:16 401

空空如也

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

TA关注的人

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