自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

莫踌躇

不去抱怨,尽量担待,不怕孤单,努力沉淀。

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

原创 Go语言指针与内存分配深度解析:从指针本质到 new、make 的底层实现

本文深入解析Go语言指针与内存分配机制。首先介绍了指针的本质是存储内存地址的变量,通过&取地址、*取值操作可间接访问数据。其次讲解了指针在函数参数传递中的应用,实现数据修改。然后区分了栈内存(自动管理)和堆内存(GC管理)的分配方式。重点剖析了new()函数为基本类型分配堆内存并返回指针,以及make()函数专为slice、map、channel等引用类型初始化内存结构的区别。通过多个代码示例展示了指针声明、函数传参、内存分配等核心概念的实际应用,帮助读者深入理解Go语言的内存管理机制。

2025-08-16 16:51:27 1116

原创 Go语言 time 包详解:从基础到实战

Go语言标准库的 time 包提供了全面精准的时间处理工具,包含两个核心类型:time.Time表示具体时间点,time.Duration表示时间间隔。time包支持获取当前时间(Now())、创建指定时间(Date())和解析时间字符串(Parse/ParseInLocation)。时间解析采用独特的"2006-01-02 15:04:05"参考模板,提供纳秒级精度和时区处理能力,适用于日志记录、定时任务等场景。

2025-08-15 16:02:17 1233

原创 Go语言函数详解:从基础到高阶的行为逻辑构建

本文深入解析Go语言函数的核心特性,从基础定义到高级应用。主要内容包括: 函数定义与基本语法:介绍函数作为第一类公民的特性,展示基础函数和多返回值函数的定义方式。 参数传递机制:详细说明值传递特性,分析基本类型、切片和map三种参数传递方式的差异。 函数类型与高阶应用:讲解函数类型的声明和使用,演示如何将函数作为参数传递实现回调机制。 文章通过具体代码示例,系统性地呈现了Go语言函数的核心概念和实际应用场景,帮助开发者掌握函数这一构建程序行为逻辑的关键要素。

2025-08-13 17:58:41 734

原创 Go语言中的切片排序:从原理到实践玩转 sort 包

在Go语言的日常开发中,切片(Slice)作为动态、灵活的数据结构,几乎无处不在。而排序作为数据处理的基础操作,更是高频需求。Go标准库中的sort包凭借其优雅的设计和高效的实现,成为切片排序的“瑞士军刀”。本文将带你从底层原理到实战技巧,全面掌握Go语言切片排序的精髓。

2025-08-11 17:38:53 990

原创 Go语言三大核心数据结构深度解析:数组、切片(Slice)与映射(Map)

Go语言核心数据结构解析:数组、切片与映射 本文深入剖析Go语言三大核心数据结构:数组、切片和映射。数组是固定长度的连续内存块,具有O(1)随机访问效率,属于值类型,在函数传参时会复制整个数组。切片是动态数组,由指针、长度和容量组成,支持灵活的扩容操作。映射则是基于哈希表的键值对集合,提供高效的数据查找能力。文章详细介绍了每种数据结构的定义、基本操作、内存布局和适用场景,并通过代码示例展示了多维数组的声明、初始化、访问和遍历方法。掌握这些核心数据结构对于编写高效、优雅的Go代码至关重要。

2025-08-11 17:27:43 1320

原创 Go语言数据类型深度解析:位、字节与进制

理解位、字节和进制的概念,以及Go语言中不同位数数据类型的特性,是编写高效Go程序的基础。减少内存占用,提高资源利用率提升程序性能,优化数据处理效率确保与硬件或协议的正确交互在实际开发中,应根据数据的取值范围、精度要求和业务场景,选择最合适的数据类型,既满足功能需求,又兼顾性能优化。Go语言严格的类型系统和明确的位数定义,为这些优化提供了坚实的基础。

2025-08-06 17:24:34 1223

原创 Go语言“fmt”包详解

本文全面介绍了Go语言标准库中的fmt包,重点讲解了格式化输入输出的核心功能。文章首先对比了Println和Printf两种输出方法的区别:Println适合简单快速输出,自动添加空格和换行;而Printf则通过格式化字符串提供精确输出控制。随后详细解析了Scan和Scanln输入函数的使用方法及注意事项,强调必须传递变量地址和正确处理输入格式。最后补充介绍了Sprintf字符串格式化和Fprint系列文件输出等实用函数,并提供了常用函数速查表。全文通过丰富示例帮助开发者全面掌握Go语言格式化操作的核心技巧

2025-08-06 17:11:50 786

原创 Go进阶:流程控制从基础到实战(if/for/switch/goto)

本文介绍了Go语言中的流程控制语句,包括if条件判断、for循环、switch多分支选择和goto跳转。if语句支持条件前声明局部变量;for循环是唯一的循环结构,提供三种形式;switch支持多条件匹配和fallthrough穿透;goto可用于错误处理等场景。通过温度判断、成绩评级等实例演示了基础用法,还展示了学生成绩管理系统的实战案例,综合运用各种流程控制实现录入、统计和查询功能。Go的流程控制设计简洁高效,是构建复杂程序逻辑的基础工具。

2025-07-29 16:12:07 677

原创 Go语法入门:变量、常量、基础数据类型、运算符(零基础也能懂)

本文为零基础读者介绍Go语言的核心语法,主要包括变量定义、基础数据类型和函数编写。详细讲解了变量的3种声明方式(var关键字、类型推断和短变量声明),介绍了整数、浮点、布尔、字符串和字符等基础数据类型的特点及用法,并通过代码示例演示了字符串拼接、长度计算等操作。最后讲解了函数的4种常见形式,包括无参数、有参数、有返回值以及Go特有的多返回值函数,帮助初学者快速掌握Go语言基础编程能力。

2025-07-28 15:13:22 904

原创 Go语言环境搭建与VS Code开发配置

Go语言开发环境搭建指南 本文详细介绍了从零搭建Go语言开发环境的完整步骤,主要内容包括: Go语言安装 - 提供Windows/macOS/Linux三系统的安装方法及验证方式 国内代理设置 - 配置goproxy.cn加速国内下载 VS Code配置 - 安装Go插件及必备开发工具链(gopls、dlv等) 开发优化 - 设置自动格式化、导入包整理等实用功能 常见问题 - 解决GOPATH配置、工具安装失败等典型问题 全文采用分步骤图文指导,适合新手快速搭建完整的Go开发环境并开始编码。

2025-07-25 14:20:05 1569

原创 Welcome to the world of Go language

摘要: Go语言是Google开发的实用主义编程语言,兼具高效性能和开发便捷性。其核心优势包括:极简语法(3行代码写Hello World)、轻量级协程(百万级并发)、快速编译部署(跨平台单文件)。Go广泛应用于云原生(Docker/K8s)、高并发服务(直播/游戏后台)、DevOps工具等领域,是当前热门技术方向。专栏将逐步讲解Go从基础到实战,适合新手入门及开发者转型,下期介绍环境搭建与首个Go程序。

2025-07-25 10:24:29 985

原创 录音管理器(recorderManager)

本文介绍了基于uni-app框架开发微信小程序录音功能的实现方案。通过recorderManager实现录音采集、回放和上传功能,支持用户自定义3-10秒的录制时长。主要功能包括:1)使用计时器控制录音时长;2)提供录音进度显示;3)实现录音回放功能;4)支持文件上传。界面采用uni-ui组件构建,包含录音按钮、时长输入框、回放和上传按钮等交互元素。技术实现上利用了uni-app的录音管理API、定时器和音频播放组件,为用户提供完整的录音诊断服务体验。

2022-08-16 16:16:41 3925

原创 轻松阻止浏览器默认行为

摘要: 本文介绍了如何阻止浏览器的默认行为。默认行为是指浏览器自带的交互功能,如右键菜单、a标签跳转等。通过e.preventDefault()(非IE)或e.returnValue=false(IE)可以阻止这些行为,并提供兼容性写法。示例演示了阻止a标签跳转的方法,包括事件监听和直接使用javascript:;等方案.

2022-04-27 17:05:55 3707

原创 To Do List (待办事项)

待办事项应用摘要 这是一个响应式的待办事项Web应用,主要功能包括: 响应式布局适配不同设备屏幕 通过回车键添加待办事项到"未完成"列表 通过复选框切换事项状态(已完成/未完成) 使用本地存储(localStorage)持久化数据 显示已完成和未完成事项的数量统计 技术实现: 前端:HTML5、CSS3(媒体查询实现响应式)、JavaScript 数据存储:localStorage保存JSON格式数据 功能:添加、删除、状态切换、数据持久化 使用jQuery简化DOM操作 该应用界面简洁

2021-03-26 10:56:01 2211

原创 浏览器本地存储全解析:5M vs 20M

HTML5提供了两种浏览器本地存储方案:sessionStorage和localStorage。sessionStorage数据仅在当前会话有效(关闭窗口即消失),存储容量约5M;而localStorage数据永久保存(除非手动删除),容量约20M。两者都通过键值对存储字符串数据,支持setItem()、getItem()、removeItem()和clear()等操作方法。注意存储对象需先用JSON.stringify()转换,且所有数据都保存在客户端浏览器中,不随页面刷新丢失。localStorage还

2021-03-26 10:27:59 440

原创 Bootstrap前端开发框架快速入门

Bootstrap是一款简洁、直观且功能强大的前端开发框架,由Twitter开发,基于HTML、CSS和JavaScript构建。它提供标准化的编码规范、丰富的组件库和插件,支持响应式布局和移动设备优先开发。框架包含栅格系统、布局容器等核心功能,可通过12列布局实现灵活的页面设计。使用Bootstrap需要遵循其规范,包括引入必要的样式文件和JavaScript插件。目前3.x版本最为流行稳定,4.x是最新版本。Bootstrap能显著提高开发效率,适合快速构建现代化网站。

2021-02-25 16:11:14 1255 2

原创 从CSS到Less:高效编写样式的进阶指南

本文介绍了从CSS到Less的进阶指南。CSS作为非程序式语言存在冗余高、维护难等问题,而Less作为CSS预处理器扩展了变量、混入、运算等功能,显著提升了开发效率。文章详细讲解了Less的安装步骤(基于Node.js)和使用方法,包括变量定义、编译转换、嵌套规则和运算特性。通过Less可以编写更简洁、易维护的样式代码,是CSS开发的高效替代方案。

2021-02-18 14:55:40 466 2

原创 CSS媒体查询全攻略

媒体查询(Media Query)是CSS3的重要功能,允许根据设备特性(如屏幕尺寸、分辨率等)应用不同的样式规则。通过@media语法,开发者可以针对不同设备类型(screen、print等)和条件(宽度、高度、方向等)定义响应式布局,实现多终端适配。媒体查询支持逻辑关键字(and/not/only)组合条件,并提供了丰富的媒体特性参数(如width、orientation等)。在移动端开发中,媒体查询常与rem单位配合使用,推荐采用从小到大的顺序编写查询规则以确保样式正确层叠。

2021-01-25 09:13:00 1027

原创 弹性布局:Flex让你的网页更丝滑

摘要 Flex布局是一种现代的网页布局方式,通过弹性容器和项目的概念实现灵活的页面排版。容器通过6个属性控制项目排列方向、换行方式、主轴对齐(justify-content)、交叉轴对齐(align-items)和多轴线对齐(align-content)。项目则可通过6个属性设置顺序、缩放比例、基准尺寸等。Flex布局简化了传统布局方式,支持响应式设计,已成为所有浏览器支持的标准化方案,为网页开发提供了强大的布局工具。

2021-01-22 09:08:32 1666

原创 流式布局:移动端适配必备技巧

流式布局是移动端开发中常用的适配方式,通过百分比设置元素宽度实现不同设备下的自动调整。文章介绍了流式布局的概念、适用场景及实现方法,包括全屏显示、等分导航栏和圣杯布局等典型应用。同时指出流式布局的局限性,如高度和文字大小固定导致的显示不协调问题,并预告后续将介绍响应式和弹性布局等解决方案。文章通过京东、携程等实例图片直观展示了流式布局的效果。

2021-01-18 21:28:19 5151

原创 移动端开发入门

移动端开发主要采用两种方案:独立制作移动端页面(主流)或响应式设计。访问方式包括域名加"m"前缀或直接使用移动设备。浏览器兼容性方面,主要考虑webkit内核,H5和CSS3可放心使用。CSS3盒子模型(box-sizing)更适合移动端开发,因其不会因border和padding撑大元素。PC端需根据兼容性需求选择传统或CSS3模型。后续将深入讲解移动端布局及实践案例。

2021-01-17 19:36:31 401 6

原创 HTML meta标签:移动端开发必备秘籍

meta标签虽然不显示在页面中,但对机器可读,能定义关键词、页面描述等信息,帮助搜索引擎爬虫理解页面内容。文章重点讲解了移动开发中viewport的标准设置,包括宽度与设备一致、默认缩放比例1.0、禁止用户缩放等关键参数。通过示例代码展示了标准的viewport设置语法,并配图说明了<meta>标签的常用属性。这些设置对移动端网页适配至关重要,是开发者必须掌握的基础知识。

2021-01-13 20:27:35 501

原创 CSS3 transform动画效果全解析

CSS3 transform属性详解:实现2D/3D转换与动画效果 摘要:transform是CSS3中实现元素位移、旋转、缩放等变换的核心属性。本文详细介绍了2D转换的三大功能:位移(translate)、旋转(rotate)和缩放(scale),包括语法说明和使用注意事项。同时讲解了动画创建的基本流程:定义关键帧(@keyframes)和调用动画(animation)。文章还对比了不同浏览器的兼容性情况,提供了transform综合写法的顺序建议,并附有多个实用的转换案例。

2021-01-08 10:14:39 4982

原创 CSS3过渡动画特效全解析

CSS3 transition属性可为元素样式变化添加平滑过渡效果,无需使用Flash或JavaScript。主流浏览器均支持该属性,但IE9及以下版本不兼容。transition简写语法包含过渡属性(property)、持续时间(duration)、速度曲线(timing-function)和延迟时间(delay)四个参数。通过设置transition-property指定过渡属性,transition-duration定义持续时间,transition-timing-function控制速度变化....

2021-01-07 15:09:58 461 4

原创 H5C3从入门到精通全攻略

本文介绍了H5C3(HTML5+CSS3+JavaScript)技术集合,重点概述了HTML5的特性和应用。HTML5作为最新HTML标准,由W3C和WHATWG合作开发,旨在支持多媒体功能。文章详细列举了HTML5的新特性,包括语义元素、表单增强、音视频支持、SVG、拖放、地理定位、Web存储等现代Web技术,以及CSS3的相关参考资源。教程提供了全面的HTML5功能说明和外部链接资源,适合开发者学习这些现代Web开发技术。

2021-01-06 10:38:15 1512 2

原创 marquee(文字滚动)标签全面解析以及使用

marquee标签用于创建文本滚动效果,支持多种属性控制滚动行为,包括滚动方向(direction)、方式(behavior)、速度(scrollamount)、循环次数(loop)、背景色(bgcolor)等。该标签可以设置文本在矩形区域内上下左右滚动,还能调整滚动区域大小(width/height)和边距(hspace/vspace)。实例展示了不同属性组合的效果,如单向/来回滚动、速度控制、对齐方式等。虽然功能丰富,但需注意现代网页开发中更推荐使用CSS动画替代此标签。

2021-01-05 12:45:08 33225

原创 JS三大属性实战:offset、client、scroll详解

本文详细介绍了JavaScript中offset、client和scroll三大属性的区别与应用。offset用于获取元素位置和大小(含边框和内边距),client用于获取元素可视区域大小(不含边框),scroll用于获取元素滚动距离。文章通过对比表格清晰展示了各属性的功能差异,并提供了兼容性解决方案。最后通过放大镜效果的实战案例,演示了如何在实际开发中运用这些属性。掌握这三大属性对于精准控制页面元素布局和交互效果具有重要意义。

2021-01-04 10:20:47 603 2

原创 揭秘JavaScript执行机制:同步异步与任务队列

本文深入解析了JavaScript的执行机制,从同步异步任务到宏任务微任务的执行顺序。JavaScript作为单线程语言,通过事件循环机制处理同步和异步任务。同步任务直接在主线程执行,异步任务进入事件队列等待主线程空闲时执行。更精细的执行机制将任务分为宏任务(如setTimeout)和微任务(如Promise),其中微任务优先级高于宏任务。通过多个代码示例展示了不同任务的执行顺序,解释了为什么看似顺序执行的代码会产生意外结果。

2021-01-01 18:36:06 1232

原创 JS定时器详解与实战:元旦倒计时制作

本文介绍了JavaScript中两种定时器的使用方法和区别:setTimeout()(单次执行)和setInterval()(循环执行)。详细说明了它们的参数设置(回调函数和时间间隔)、停止方法(clearTimeout/clearInterval)以及注意事项。文章最后通过一个元旦倒计时的完整案例,展示了如何结合定时器和DOM操作实现动态时间显示功能,包括计算剩余时间并将其分解为天、时、分、秒等单位的实现方法。案例提供了完整的HTML结构和CSS样式,适合初学者学习定时器的实际应用。

2021-01-01 09:13:29 945

原创 BOM详解:浏览器对象模型全解析

本文介绍了BOM(浏览器对象模型)的核心概念和常用API。BOM作为JavaScript三大组成部分之一,主要用于操作浏览器窗口,其顶级对象是window。文章详细列举了window对象的关键方法(如open/close窗口操作)、Screen对象(获取屏幕尺寸)、Location对象(URL相关操作)、History对象(浏览历史控制)以及Navigator对象(浏览器信息)的具体属性和方法。这些API为开发者提供了控制浏览器窗口、获取环境信息、管理页面导航等核心功能,是Web开发中与浏览器交互的重要工具

2020-12-30 18:51:28 1597 2

原创 深入理解JavaScript回调函数

摘要:JavaScript回调函数是将一个函数作为参数传递给另一个函数,并在特定时机被调用的机制。文章通过商店订货的比喻形象解释了回调概念,并给出代码示例展示直接调用和回调传递的区别。重点讲解了回调函数的两种传参方式:作为同级参数传递或在调用时内部创建参数。回调函数常用于组件开发中的事件处理场景,是JavaScript异步编程的重要基础概念。

2020-12-30 09:06:22 2313 2

原创 前端事件委托:提升性能的秘诀

摘要 事件委托是前端开发中提升性能的重要技巧,利用事件冒泡机制将子元素事件委托给父元素处理。相比直接给每个子元素绑定事件,事件委托能显著减少DOM操作次数,提高性能。实现原理是通过事件对象的target属性判断事件源,再执行相应操作。这种方法还能自动处理动态新增的DOM元素,无需重复绑定事件。文章通过快递签收的生动比喻和多个代码示例,详细讲解了事件委托的实现方法和优势,包括减少内存占用、简化事件管理等。特别适合处理大量相似元素或动态内容的情况。

2020-12-29 12:58:41 1454

原创 禁止网页内容被复制的方法

本文介绍了多种禁止网页内容被选中的方法:1) 使用onselectstart="return false"禁止整个body或指定div内容被选中;2) 结合多个事件如oncontextmenu、oncopy等全面禁止选中和复制;3) 详细解释了各事件的功能。另外还提供了用原生JS实现图片替换光标的方法,通过cursor:url()属性和onmousemove事件实现。这些技术可用于保护网页内容或实现特殊交互效果。

2020-12-28 17:25:29 3963

原创 JavaScript事件对象详解与应用

JavaScript事件对象(event)是触发事件时自动生成的描述对象,包含事件相关信息。鼠标事件会包含坐标位置等数据,键盘事件则包含按键信息等。通过事件处理函数的参数可以获取该对象,常用属性包括clientX/Y(鼠标坐标)、key/keyCode(按键信息)、target(触发元素)等。标准方法preventDefault()和stopPropagation()可阻止默认行为和事件冒泡。文章提供了鼠标拖拽窗口的实例代码,演示了如何利用事件对象实现元素跟随鼠标移动的效果。

2020-12-28 09:09:05 810

原创 深入解析DOM事件流:冒泡与捕获机制

DOM事件流描述了事件在页面元素间的传播过程,包含三个阶段:捕获阶段(从window到目标元素)、目标阶段(触发目标元素)和冒泡阶段(从目标元素回传到window)。现代浏览器同时支持事件捕获和事件冒泡,而早期IE仅支持冒泡。开发者可通过addEventListener的第三个参数选择监听捕获(true)或冒泡(false)阶段。使用e.stopPropagation()或e.cancelBubble=true可以阻止事件继续传播。理解事件流机制有助于更精确地控制事件处理顺序和范围。

2020-12-26 10:18:37 635

原创 JS节点操作全解析:创建、添加与层级关系

JS中的节点操作节点概述网页页面中所有内容都是节点.在DOM中节点我们以Node来表示.我们一般使用DOM对节点实现修改,添加,删除操作一般情况下,节点至少拥有三个基本属性NodeType:节点类型,这里的类型是标签的名称,比如div等等NodeName:节点名称,这里的名称是指JS中给这个节点起的一个名字NodeValue:节点值创建节点语法:document.createElement("tagName")document.createElement("tagName")

2020-12-25 11:38:57 411

原创 JS排他思想与自定义属性详解

排他思想是JS中的重要编程思想,其实现步骤为:1)获取所有元素;2)重置所有元素样式;3)单独设置目标元素样式。顺序不可颠倒。自定义属性则用于在DOM元素上存储额外数据,可通过getAttribute/setAttribute方法操作,与原生属性访问方式不同。H5规范要求自定义属性以"data-"开头,便于区分原生属性,适合存储不需保存到服务器的临时数据。

2020-12-24 09:05:49 885

原创 鼠标事件详解:mouseover与mouseenter区别

本文详细分析了mouseover和mouseenter两种鼠标事件的差异。通过两个示例演示:当元素不含子元素时两者效果相同,但当元素包含子元素时,mouseover会在鼠标经过元素及其子元素时多次触发,而mouseenter仅在鼠标初次进入元素时触发。关键区别在于:mouseover会冒泡到子元素(对应mouseout),而mouseenter只在元素边界触发(对应mouseleave)。这对前端开发中精确控制鼠标交互行为有重要指导意义。

2020-12-23 11:26:29 870 2

原创 精通DOM操作:改变内容与样式的实战技巧

本文介绍了JavaScript中操作DOM元素内容和样式的实用技巧。主要内容包括: 修改元素内容: 文本框使用value属性 其他元素使用innerText(不解析标签)或innerHTML(解析标签) 改变元素样式: 通过style属性直接修改行内样式(驼峰命名法) 通过className修改类名(会覆盖原有类名) 应用实例: 展示了文本框和普通元素内容修改的实现 演示了表格行鼠标悬停变色效果 文章提供了具体代码示例,帮助开发者掌握DOM操作的核心方法,实现动态修改网页内容和样式。

2020-12-22 18:56:34 377 2

原创 掌握DOM事件:从基础到实战

本文介绍了JavaScript DOM事件的基本概念和使用方法。主要内容包括:事件的定义(可被JavaScript侦测的行为)、事件三要素(事件源、事件类型、事件处理程序)、事件处理步骤(获取事件源、绑定事件、添加处理程序、触发事件)。文章提供了常见DOM事件列表(如onclick、onchange等)和一个密码验证的实现案例,通过输入事件实时判断密码是否正确(密码为"123456"时显示正确图标)。案例中使用oninput事件监听输入变化,动态更新提示图标和颜色。

2020-12-21 09:32:52 524

空空如也

空空如也

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

TA关注的人

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