lv-tools
TypeScript icon, indicating that this package has built-in type declarations

0.0.27 • Public • Published

lv_tools

lv_tool(工具中的LV)是一个前端的工具包,使前端开发如鱼得水,它具有以下的特点:

  • 装笔性:有利于向他人展示代码的美好🐶
  • 不严谨性: 作者能力有限,水平还在提升中🆙
  • 不负责任性:想用的话,自己看着办吧👀...

Installation

npm install lv_tools

Use

improt { lv_typeOf } from lv_tools

String相关

lv_typeOf:(obj:any) => string
"[object Boolean]": "boolean",
"[object Number]": "number",
"[object String]": "string",
"[object Function]": "function",
"[object Array]": "array",
"[object Date]": "date",
"[object RegExp]": "regExp",
"[object Undefined]": "undefined",
"[object Null]": "null",
"[object Object]": "object",
将参数百分位以逗号分割
lv_thousandBitSeparator:(param:number | string) => string
将参数百分位以逗号分割,并保留n位小数
lv_moneyFormat:(param:number | string, n:number) => string
判断字符串是否是十六进制的颜色值
lv_isColor:(param:string) => boolean
隐藏用户手机号中间四位
lv_hidePhone:(param:string) => string
生成UUID
lv_uuid:(len:number, radix:number) => string

Object相关

判断对象是否有键
lv_objHasKey:(param:object) => boolean
深拷贝
lv_deepClone:(params:object) => object
函数节流
lv_throttle:(fn:Function, awat = 50) => fn
* 滚动加载,加载更多或滚到底部监听
* 高频点击提交,表单重复提交
函数防抖
lv_debounce:(fn:Function, awat = 50) => fn
* 搜索框搜索输入。只需用户最后一次输入完,再发送请求
* 手机号、邮箱验证输入检测
* 窗口大小Resize。只需窗口调整完成后,计算窗口大小。防止重复渲染。

date相关

日期/时间格式化
lv_dateFormat(param:Date, type?:string) => string
type: yyyy-MM-dd hh:mm:ss
日期/时间间隔 interval:毫秒
lv_timeCountDown(interval: number|string) => obg:Iobj
Iobj:{day,hour, minute,second}

array相关

数组对象,通过指定key生成map
lv_generateMap(array:obj[], key:string) => obj
数组对象,通过指定key去重
lv_uniqueArrayObject(array:obj[], key:string) => obj[]
普通数组去重
lv_uniqueArray(array) => array
数组构建树结构
lv_generateTree(array,id = "id",parentId = "parentId",children = "children") => obj
树结构拉平
lv_flaTree(array,children = "children") => obj[]

observe

lv_observe {
  subscribe(type:string, fn:callback),
  publish(type:string|obj, value),
  unSubscribe(undefined|string)
}

Readme

Keywords

Package Sidebar

Install

npm i lv-tools

Weekly Downloads

2

Version

0.0.27

License

MIT

Unpacked Size

71.8 kB

Total Files

23

Last publish

Collaborators

  • cd0287912