2.0.3 • Published 3 years ago
simple-js-helper v2.0.3
simple-js-helper
介绍
Js工具库,支持Ts(d.ts类型标注)
使用
所有工具都是export出来,没有export default
import {PinYinUtils} from 'simple-js-helper';
console.log(PinYinUtils.firstLetter('你好中国'));!!!!!!!!!!!!!!!!!与1.x不兼容
PinYinUtils class
- 中文拼音工具
- method
firstLetter获取中文的大写首字母(中国 => ZG)
SimpleValidator class
- 验证器
- method
isPlateNumber判断车牌号是否合法,包含武警车牌、军车车牌、使馆车牌、民用车牌
autoDisposeWhenUnload function
- 页面/进程销毁时自动执行销毁函数,支持浏览器和nodejs
AwesomeCache class extends AutoDestroyClass
- 优雅的缓存器
一些小东西
others一个对象{ globalWin: Window|null; globalNode: Global|null; globalThis: Window|Global|null; }nothing2do一个空函数,只打印传入的参数,其他什么也不做,有时候需要一个空函数,可以避免重复创建EmptyArray一个空数组,请勿修改此数组,有时候需要一个空数组,可以避免重复创建IsWKWebviewInWxboolean,微信网页是否使用WKWebview内核UNDEFINEDundefined的别名padfunction 在少于指定长度时往前或往后填充指定字符
Calendar class
- 日历帮助类,中国农历相关功能及与公历互转
copy2Clipboard function
- 复制内容到系统剪切板,仅支持浏览器
DateHelper class
- 日期帮助类
dynamicLoadScript function
Promise化,使用script标签加载js脚本
getDefaultUserInitPsw function
- 获取一个
8~16位长度的随机密码,密码由小写字母、大写字母和数字组成
getVarType function
- 获取变量的类型,返回一个枚举类型
VariableType(已export)
InfiniteLoopGet class extends AutoDestroyClass
- 按顺序无限循环获取数组中的项
- method
get获取下一项
md5 function
- 计算字符串的md5值,来自JavaScript-MD5 Version 2.2
mobilePartialShow function
- 格式化手机号保护隐私,将中间4位显示为星号
*(188****8888) - 返回一个对象
{mobile:string; source:string;},mobile为加星号的值,source为原始传入的值
Queue class extends AutoDestroyClass
- 先进先出的队列
randomStr function
- 获取随机字符串
- parameter
len长度 - parameter
excludeGot是否排除已命中的字符,默认为false - parameter
seeds字符种子,从种子中随机取字符。默认为ascii码值从33到127之间的字符
SimpleEvent class extends AutoDestroyClass
- 一个简单的事件总线,类静态方法为全局总线,实例化的为私有总线
SpecificLotteryRate class extends AutoDestroyClass
- 大乐透抽奖算法。给每个奖品设置一个中奖概率(概率取值范围
(0,1]),然后调一次 methodgetOne返回一个奖品 - method
getOne抽一个奖品 - 实例化的第二个参数
excludeGot,表示是否排除抽中的奖品,即每个奖品只能抽中一次,默认为true-要排除 - method
reset重置已抽中奖项,excludeGot=true时清除被排除的奖品,false时无任何作用
URLHelper class extends AutoDestroyClass
- 网页url帮助类,自动解析各个部分
- method
clone克隆一个新的值一样的URLHelper - get
static current当前页面的url帮助类 - property
excludeHashString不包含hash部分的url,字符串 - method
static from快速创建一个URLHelper - method
static toQueryUrlObject处理url上的query参数xxx=123&yyy=456,字符串转对象 - method
static toQueryUrlString处理url上的query参数{ xxx: 123, yyy: 456 },对象转字符串
Wait class
Promise类型的等待方案- method
static milliSeconds等待指定毫秒数后执行Promise.resolve - method
static atLeastWaitMinTime.begin 的包装
WaitMinTime class extends CommonPool
Promise类型的分体式最小等待延迟方案,可设置最小等待毫秒数(内部使用setTimeout执行延迟)- method
static begin返回结束计时进行等待方法,此等待方法判断是否满足最小等待时间并在满足时才执行Promise.resolve - method
begin分体式等待的开始计时方法,无返回值 - method
end分体式等待的结束计时方法,与 methodbegin配套使用,返回Promise,此时判断是否满足最小等待时间,满足才Promise.resolve,不满足则继续等待达到最小时间
WechatHelper class
- 微信网页JS-SDK帮助类
- 内置
跳转网页授权、获取code、获取用户信息一套授权流程功能 - 封装
关闭页面、获取定位、查看定位、扫码、选择图片、上传图片和获取本地图片方法,并已封装为Promise返回值
WxCustomElement enum
- 微信网页开放标签枚举类型
AutoDestroyClass class
- 可自动销毁基类
- 支持
浏览器和node.js,在window.onbeforeunload或process.onBeforeExit时自动执行销毁 - 可以手动执行 method
destroy进行销毁 - method
destroy可重写,但需要手动调用super.destroy()
AwesomeArray class extends Array
- 增强版
Array - 新增一些实用方法和属性
- get
isEmpty是否是空数组 - method
clear清空数组 - method
first返回第一个数组项 - method
last返回最后一个数组项 - method
unshiftWhenNotIn项不存在时才unshift - method
pushWhenNotIn项不存在时才push - method
spliceItemWhenIn项存在时才splice
AwesomeObject class extends Object
- 增强版
Object - 新增 method
clear,清空所有私有属性
CommonPool class extends AwesomeCache
- 通用池子类,一般作为基类被其他类继承
- method
static instantiate从池子中获取实例 - method
free释放实例到池子中 - method
clear销毁实例,不释放到池子中
SRTHelper class extends AutoDestroyClass
- srt文件处理器,可以解析srt文件并获取指定时间点的字幕文本
Stack class extends AutoDestroyClass
- 先进后出的栈
deepCopy function
- 深拷贝函数
- 对
Date、Array、Object类型的值进行深拷贝,其他类型的值原样返回
ElementSizeChanged class
- 元素宽高监听器,使用
getBoundingClientRect轮询获取元素宽高 detectTimeout检测频率,全局参数- 具有自动销毁功能,自建示例也可手动销毁
ColorTransformer class
- 颜色转换器,支持
rgb/rgba/hex/hsl/hsla/hsv/cmyk之间的互转 hex支持透明度- method
toString返回rgba格式 - 具有自动销毁功能,自建示例也可手动销毁
PowerJSON class
- 增强版
JSON,补充JSON的不足,stringify和parse方法与JSON的输入输出类型一致 - 可完整序列号和反序列化
Function(建议纯函数,只简单保存了函数toString的值)、RegExp、Date和undefined - 如果运行环境支持Symbol.for,可以在开启开关
PowerJSON.handleSymbol = true后处理Symbol值(内部使用Symbol.for取值来保证是同一个Symbol)