simple-js-helper
v2.0.3
Published
some js helper modules
Downloads
1
Readme
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
一个空数组,请勿修改此数组,有时候需要一个空数组,可以避免重复创建IsWKWebviewInWx
boolean,微信网页是否使用WKWebview内核UNDEFINED
undefined的别名pad
function 在少于指定长度时往前或往后填充指定字符
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 atLeast
WaitMinTime.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
)