Golang读写二进制文件方法总结

使用 Golang 的 encoding/gob 包读写二进制文件非常方便,而且代码量也非常少。但是在需要自定义二进制格式(自定义二进制格式有可能做到更紧凑的数据表示和更快的读写速度)的场...

Go语言针对Map的11问你知道几个?

目录1. Map 使用时需要注意哪些问题?2. Map 扩容是怎么实现的?3. Map 的 panic 能被 recover 吗?4. 并发使用 Map 除了加锁还有什么其他方案吗?5. sync.Map 和加锁的区别是什...

golang中的jwt使用教程流程分析

目录golang-jwt使用加密解密源码分析SignedStringParseWithClaimsgolang-jwt使用老版本<v4.0.0 为github.com/dgrijalva/jwt-go 新版本https://github.com/golang-jwt/jwt本...

一文详解在Go中如何使用Viper来管理配置

目录为什么选择 Viper把配置值读入 Viper设置默认配置值从配置文件读取配置监控并重新读取配置文件从 io.Reader 读取配置从环境变量读取配置从命令行参数读取配置从远程 ke...

基于Golang开发一个轻量级登录库/框架

目录1.Enforcer2.Config3.Adapter4.Context5.Watcher6.Logger几乎每个项目都会有登录,退出等用户功能,而登录又不单仅仅是登录,我们要考虑很多东西。token该怎么生成?生成什么样...

Golang中深拷贝与浅拷贝详解

目录什么是深拷贝?什么是浅拷贝?示例代码小结什么是深拷贝?深拷贝(Deep Copy)是指原对象与拷贝的新对象互相独立,对其中任何一个对象的改动都不会对另外一个对象造成影响。值类型...

golang grpc配置使用实战

目录什么是PRC&GRPCGo gRPC 环境准备实战编写和调用什么是PRC&GRPCRPC是远程过程调用(Remote Procedure Call)的缩写形式, RPC 的主要功能目标是让构建分布式计算(应用)更容易,在...

一文带你探索Golang计时器的奥秘

目录1. Golang 计时器基础1.1 计时器的创建和启动1.2 计时器的停止1.3 计时器的重置2. Golang 计时器实现原理2.1 堆结构2.2 计时器的堆实现2.3 计时器的堆调整3. Golang 计...

Golang中HTTP路由设计的使用与实现

目录Golang之HTTP路由设计动手编写自己的路由framework/core.goframework/group.go如何实现动态路由改造一下core.go验证Golang之HTTP路由设计为什么要设计路由规则,路由规则...

Go语言基础学习之Context的使用详解

目录前言基本用法Context控制goroutine的生命周期使用 WithValue() 传递数据使用 WithCancel() 取消操作使用 WithDeadline() 设置截止时间使用 WithTimeout() 设置超时时间...

Go Resiliency库中timeout实现原理及源码解析

目录1.go-resiliency简介2.timeout模式3.源码实现如下4.扩展一下1.go-resiliency简介​ 今天看到项目里用到了go-resiliency这个库,库整体比较简单,代码量不大。主要实现go中...

Golang设计模式之外观模式的实现

目录1. 模拟场景2. 代码实现2.1 Hero2.2 LiXin2.3 LiBai2.4 main3. 含义1. 模拟场景实现需求为玩家拥有多个英雄,在部署好英雄之后,只用点击进攻,不用关心每个英雄具体自己的攻...

Go语言如何利用Mutex保障数据读写正确

目录1、实现机制2、基本用法3、race detector4、总结5、思考问题Go 并发场景下如何保障数据读写正确?本文聊聊 Mutex 的用法。Go 语言作为一个原生支持用户态进程(Goroutine)的...

详解Go channel管道的运行原理

目录前言功能channel结构运行原理源码分析总结前言Go推荐通过通信来共享内存,而channel就实现了这一理念。那channel是怎么运行的呢?功能举个例子看下channel的使用效果:packag...

深入探究Golang中log标准库的使用

目录使用源码使用建议Go 语言标准库中的 log 包设计简洁明了,易于上手,可以轻松记录程序运行时的信息、调试错误以及跟踪代码执行过程中的问题等。使用 log 包无需繁琐的配置...

一文详解Golang中new和make的区别

目录1. 简介2. new 函数2.1 new 函数的作用2.2 new 函数的语法3. make 函数3.1 make 函数的作用3.2 make 函数的语法4. 区别对比4.1 分配的类型4.2 返回值类型4.3 使用场景4...

Golang多线程下载器实现高效快速地下载大文件

目录前言请求资源http1.1协议Range\Content-RangeLast-Modified\If-Modified-SinceNewRequest()http.DefaultClient.Do()获取文件名下载文件下载分片合成文件多线程下载总结...

Golang中间件设计示例详解

目录什么是中间件动手设计中间件代码处理framework/core.goframework/group.goframework/node.goframework/context.go中间件例子实际使用什么是中间件中间件:将这些非业务...

Golang分布式注册中心实现流程讲解

目录动手实现一个分布式注册中心日志服务log/Server.golog/Client.go主启动程序LogService服务启动与注册service/service.go服务注册与发现registry/client.goregistry/reg...

Golang-如何判断一个 interface{} 的值是否为 nil

目录引用例子两个 interface 比较interface 与 非 interface 比较参考资料引用起初我会下意识的回答,直接 v == nil 进行判断不就好了吗?
然后翻阅了很多资料终于大致搞定里面...

深入刨析Golang-map底层原理

目录map底层原理刨析1. Go map 的底层结构Go map 的查找Go map 的插入/更新Go map 的删除Go map 的扩容Go map 的遍历map底层原理刨析Go 语言内置了 map 数据结构, map 的底...

JavaScript中的创建枚举四种方式

目录基于对象的枚举优缺点枚举值类型基于Object.freeze()枚举优缺点基于proxy枚举优缺点基于类的枚举优缺点总结字符串和数字具有无数个值,而其他类型如布尔值则是有限的集合...

JavaScript如何防止页面退格键回退

目录什么是退格键思路概述具体实现兼容性处理焦点问题处理history.back()问题在 Vue 中使用方案一:自定义指令方案二:Vue Mixin总结在一个网页中,当我们在输入框内输入文字或者...

详解JavaScript中Promise类的使用方法

目录1. all 2. allSettled3. race4. any 这篇主要讲一下Promise的类方法的基本使用,至于Promise的基本使用这里就不赘述了,之前也有手写过Promise、实现了Promise的核心逻辑...

JavaScript尾递归的实现及应用场景

目录什么是尾递归和递归的差别尾递归的优化应用场景总结什么是尾递归尾递归是一种特殊的递归,它的特点是在函数的最后一步调用自身,而不是在调用后还有其他操作。尾递归可以有...

Cropper.js进阶之裁剪后保存至本地实现示例

目录引言正文1. 引入Cropper.js2. 创建图像裁剪器3. 初始化Cropper.js4. 裁剪图像并保存至本地完整代码引言在开发Web应用程序时,经常需要对图片进行裁剪和编辑。Cropper.js...

详解cesium实现大批量POI点位聚合渲染优化方案

目录前言思考开发使用前言cesium目前只提供了entityCluster这个聚合类,使打点聚合更方便快捷的实现,但是一般在真正做项目的时候,大家会经常碰到成千上万个甚至几十万个点位需...

一文总结JavaScript中常见的设计模式

目录设计原则什么是设计模式一、单例模式二、策略模式三、代理模式四、迭代器模式五、发布-订阅模式六、命令模式七、组合模式八、模板方法模式九、享元模式十、职责链模式...

Cropper.js进阶之固定宽高图片裁切实现示例

目录引言准备工作页面结构编写JavaScript总结:全部代码如下:引言在图像处理中,图片裁切是常见的需求。有时候,我们希望裁切后的图片具有固定的宽高,而不是任意宽高比。Cropper.js...

Cropper.js进阶之裁剪后保存至服务器实现详解

目录Cropper.js将截图保存到服务器并使用Fetch进行请求全部前端代码Cropper.js将截图保存到服务器并使用Fetch进行请求要使用Cropper.js将截图保存到服务器并使用Fetch进行...

Cropper.js入门之在HTML中实现交互式图像裁剪

目录简单介绍:安装方法:npm引入:cdn引入:简单入门简单介绍:Cropper.js是一个基于JavaScript的图像裁剪库,用于在网页或应用程序中实现灵活和交互式的图像裁剪功能。它提供了丰富的...

关于Javascript中值得学习的特性总结

目录可选链操作符(Optional Chaining Operator)空值合并运算符(Nullish Coalescing Operator)Promise.allSettled()BigInt类型可选链操作符(Optional Chaining Operator)可选链操...

Uniapp接入插件的3种方式总结

目录前言一、使用HBuilderX导入插件1.找到所需插件2.导入插件3.使用插件二、通过uni_modules单独安装插件1.创建uni_module目录2.下载并安装插件3.使用插件三、通过componen...

JavaScript删除数组元素的方法指南

目录删除数组元素之splice()删除数组元素之filter()删除数组元素之pop()删除数组元素之shift()删除数组元素之splice()、slice()和concat()组合操作删除数组元素之使用ES6中...

深入理解JavaScript中的宏任务和微任务机制

目录引入宏任务与微任务引入// 开启一个定时器 1秒后执行setTimeout( () => { console.log(1)}, 1000)console.log(2)以上的代码控制台的输出结果是“ 2,1";即先输出...

TypeScript类型使用示例剖析

目录JavaScript的内置类型 VS TypeScript内置类型元祖接口interfaceinterface和type有什么区别?枚举怎么让Babel支持const enum?字面量类型特殊类型类型的装饰JavaScript的内...

JavaScript中forEach和map的使用场景

目录foeEachforEach方法是同步执行的,不能使用异步操作。mapmap方法不会遍历已经添加并且未被删除的元素。什么是迭代器模式JavaScript 的 forEach 和 map方法是应用了迭代器...

uniapp小程序自定义tabbar以及初次加载闪屏解决方法

很惭愧,这竟然是老衲在csdn的首次内容输出,还请看官,高抬贵手,多喷两句, 反正我也不听~...

通过手写instanceof理解原型链示例详解

目录Instanceof的作用手写Instanceof什么是原型原型的应用场景什么是原型链Instanceof的作用Instanceof是判断一个实例是否是其父类或者祖先类型的实例的方法。原理就是Inst...

JS 简单实现拖拽评星的示例代码

目录一、实现效果二、总结与思考废话开篇:通过 canvas 简单拖拽评星,主要是通过个人的理解去实现这样的一个效果。一、实现效果html<div class="main"> <div class="sc...

深入理解JS中的微任务和宏任务的执行顺序及应用场景

目录微任务和宏任务的区别及具体场景任务之间的执行顺序微任务和宏任务的区别及具体场景微任务和宏任务皆为异步任务,它们都属于一个队列,主要区别在于他们的执行顺序,Event Lo...

JS电梯导航的实现示例

目录预览效果主要的js代码整体代码预览效果之前css 利用 scroll-behavior 和 锚点 实现了 电梯导航,点击可以看这篇文章css实现电梯导航的效果。评论区有人想让我用js也实现...

Cropper.js进阶实现图片旋转裁剪处理功能示例

目录引言准备工作页面结构编写JavaScript总结全部代码如下引言在Web应用中,处理用户上传的图片是一项非常常见的需求。有时,用户可能需要旋转图片以获得更好的视觉效果。本文...

JavaScript基于ChatGPT实现打字机消息回复

目录1 背景2 简介3 服务端实现3.1 协议3.2 消息格式3.2.1 event3.2.2 id3.2.3 retry3.2.4 data3.3 示例4 浏览器 API4.1 建立连接4.2 监听事件5 实践5.1 服务端5.2 浏览器6...

js循环中使用正则失效异常的踩坑实战

目录1、异常案例:2、原因分析3、解决方法13、解决方法23、解决方法3总结1、异常案例:使用正则匹配111const regular = /111/g; // 匹配111 // console.log(regular.test('1...

JavaScript注册监听事件和清除监听事件方式详解

目录前言注册监听事件传统方式方法监听事件注册方式addEventListener()attachEvent()addEventListener()与attachEvent()的兼容移除监听事件传统方法的移除移除方法监听事件...

Web Components入门教程示例详解

目录Web Components不兼容IE困境Web Components核心技术自定义元素HTML模板(template、slot)shadow root(影子Dom)Web Components不兼容IE2011年提出Web Components,为了解决...

ts中的void和never类型及区别

目录ts中的void和never类型voidnever补充:void类型和never类型void类型never类型ts中的void和never类型void  表示没有任何类型// 没有返回值的函数,其返回值类型为 voidfun...

GoJs中标题和缩略图使用技巧

目录前言标题的使用随图形变化的标题不随图形变化的标题缩略图的使用总结前言在可视化图形中为了方便区分,需要给图形一个标题。可以在画布外面用html调整位置之后作为图形的...

如何使用require.context实现优雅的预加载

目录前言丑陋的预加载单张预加载多张预加载优雅的预加载require.context前言在前端开发中,对页面花里胡哨度[注1]要求越高的页面,用到的图片、音频什么的就越多,比如什么结婚请...

返回顶部
顶部