写点什么

lancet: 一个全面、高效、可复用的 go 语言工具函数库

作者:柳叶刀
  • 2021 年 12 月 13 日
  • 本文字数:932 字

    阅读完需:约 3 分钟

lancet(柳叶刀)是一个全面、高效、可复用的 go 语言工具函数库。 lancet 受到了 java apache common 包和 lodash.js 的启发。


特性

👏 全面、高效、可复用

💪 100+常用 go 工具函数,支持 string、slice、datetime、net、crypt...

💅 只依赖 go 标准库

🌍 所有导出函数单元测试覆盖率 100%


安装

go get github.com/duke-git/lancet 用法 lancet 是以包的结构组织代码的,使用时需要导入相应的包名。例如:如果使用字符串相关函数,需要导入 strutil 包:


import "github.com/duke-git/lancet/strutil"


例子

此处以字符串工具函数 ReverseStr(逆序字符串)为例,需要导入 strutil 包:


package main

import ("fmt""github.com/duke-git/lancet/strutil")


func main() {

s := "hello"

rs := strutil.ReverseStr(s)

fmt.Println(rs) //olleh

}


API 文档


  1. convertor 数据转换包转换函数支持常用数据类型之间的转换

导入包:import "github.com/duke-git/lancet/convertor"package main


2. cryptor 加解密包加密函数支持 md5, hmac, aes, des, ras

导入包:import "github.com/duke-git/lancet/cryptor"package main


3. datetime 日期时间处理包处理日期时间导入包:import "github.com/duke-git/lancet/datetime"package main


4. fileutil 文件处理包文件处理常用函数

导入包:import "github.com/duke-git/lancet/fileutil"package main


5. formatter 格式化处理包格式化相关处理函数

导入包:import "github.com/duke-git/lancet/formatter"package main


6. netutil 网络处理包处理 ip, http 请求相关函数

导入包:import "github.com/duke-git/lancet/netutil"

http 方法 params 参数顺序:header, query string, body, httpclientpackage main


7. random 随机数处理包生成和处理随机数

导入包:import "github.com/duke-git/lancet/random"package main


8. slice 切片操作包切片操作相关函数

导入包:import "github.com/duke-git/lancet/slice"

由于 go 目前对范型支持不稳定,slice 处理函数参数和返回值大部分为 interface{}, 待范型特性稳定后,会重构相关函数


9. strutil 字符串处理包字符串操作相关函数

导入包:import "github.com/duke-git/lancet/strutil"package main


10. validator 验证器包数据校验相关函数

导入包:import "github.com/duke-git/lancet/validator"package main

发布于: 1 小时前阅读数: 5
用户头像

柳叶刀

关注

还未添加个人签名 2019.04.10 加入

还未添加个人简介

评论

发布
暂无评论
lancet: 一个全面、高效、可复用的go语言工具函数库