2.2.0-beta.0 • Published 1 year ago
rh-js-methods v2.2.0-beta.0
描述
- 常用方法的封装
使用
npm install rh-js-methods
import { filter } from 'rh-js-methods'
array
filter<T
extends
object>
description
单层过滤param
list
T[]
待过滤数组param
filterConditions
{[key:string]:
number|
string
|RegExp
} 过滤条件param
retainNotObject
是否保留非对象项returns
T[]
flat
description
数组扁平化param
list
{Array
}param
depth
{?number
=1
} 深度returns
Array
version:
2.2.0
isArray
description
是否为数组param
value
any
returns
boolean
selects<T>
description
指定范围 来随机选择数组元素param
list:
T[]
param
min:
number
param
max:
number
(包括)returns
T[]
select<T>
description
选择数组其中一项, 不指定就随机选一param
list
T[]
待选择数组param
index
?number
指定选择索引(可为负数)returns
T|null
选择项
toArray<T>
description
将非数组转换为数组param
value
T
|T[]
returns
T[]
pick
description
从数组中取任意 一个 元素param
any[]
list
returns
数组中任意一个
unique<T>
description
去除数组重复项param
T[]
list
待过滤数组returns
T[]
chunk<T>
concat<T>
description
连接多个数组params
...list
any[][]
多个数组returns
any[]
drop<T>
description
去除前n
个元素param
T[]
list
数组param
number
n
=0
要去除元素个数returns
T[]
list
剩余切片
dropRight<T>
description
从右往左删除的指定个数param
list
T[]
要处理的数组param
n
=1
需要删除的元素数量returns
T[]
fill<T>
description
在原有数组上改变, 修改指定位置的值param
array
T[]
待填充改变的数组param
value
T
填充值param
num
填充个数returns
difference<T>
description
过滤数组param
list
T[]
待过滤的数组param
...filterConditions:T[]
过滤使用的条件returns
T[]
过滤后的数组(new)
zip
description:
创建一个分组元素的数组,数组的第一个元素包含所有给定数组的第一个元素,数组的第二个元素包含所有给定数组的第二个元素,以此类推version:
2.1.11
param
arrays
:...any[]
returns
any[]
color
isHexColor
description
判断是否为颜色字符串或数字param
hex
string
三位/六位的十六进制的颜色returns
boolean
toRGB
description
16
进制颜色转RGB
/RGBA
字符串param
val
16
进制颜色param
?opa
透明度returns
string
event
description
绑定事件param
name
事件名称param
fn
待触发事件param
name
移除事件的名称description
触发后就移除当前事件param
name
待触发事件的名称param
args
触发事件的参数param
name
待触发事件的名称param
args
触发事件的参数
EventEmitter<T
, U>
description
简易观察者模式
function
toPromise<T>
description
将方法或值转换为Promise
对象, 若传输values
切target
为function
, 就会返回执行结果param
target
any
param
...values
?any[]
returns
Promise<T>
isArray
description
是否为数组param
value
any
returns
boolean
once
description
fn
方法只会执行一次param
fn
指定值运行一次的方法returns
返回封装后的方法
throttle
description
节流: 用于限制函数触发频率, 每个delay
时间间隔,最多只能执行函数一次param
fn
function
待处理函数param
interval
number
间隔returns
func
debounce
description
- 防抖: 时间内只会执行一次 可以减少函数触发的频率
- 当函数触发时,使用一个定时器延迟执行操作。
- 当函数被再次触发时,清除已设置的定时器,重新设置定时器。
- 如果上一次的延迟操作还未执行,则会被清除。
param
fn
function
param
interval
number
returns
after
description
调用n
次后才触发func
param
n
调用后多少次才执行param
func
限定的函数returns
新的限定函数
ary
description
调用func
最多接受n
个参数param
func
限定函数param
n
限制参数数量returns
新的覆盖函数
before
description
调用n
次后,再调用就会返回最后一次调用的结果param
n
超过n
次不再调用param
func
限定函数returns
新的限定函数
bind
description
thisArg
绑定func
的this
,并且func
会接收partials
附加参数param
func
绑定的函数param
thisArg
绑定的对象param
partials
附加的部分参数returns
新的绑定函数
curry
description
柯里化param
func
待柯里化函数param
len
待柯里化参数个数returns
柯里化函数
delay
param
func
指定函数param
delayTime
延迟时间param
args
传输参数returns
func
执行结果(Promise)
flip
param
func
要翻转参数的函数param
args
反转参数returns
loop
description:
指定次数遍历param
length
:number
param
callback
:(index:
number)
=>true
|void
returns
number
loops
description:
指定次数遍历param
length
:number[]
param
callback
:(index:
number)
=>true
|void
returns
number
loops<T>
description:
数组遍历version:
2.1.11
param
arrays
param
callback
returns
number
math
- 无限大(小)当做
js
Number
的最大(小)值主要处理计算异常的问题, 二期再加入大位数处理 - 二期再加入大位数计算
HEX
description
将数字装换成需要装换的数据格式(k
,m
,g
,t
,p
,e
,z
,y
,b)
param
num
(number|string)
待转换的数子(<binary^
9)
param
binary
(number)
进制(default:1024)
returns
(number)
add
description
两数求和param
augend
number
加数param
addend
number
被加数returns
number
( 不会超过数字的边界值1.7976931348623157e
+308
)
ceil
description
向上取整的值(没有对number
边界值[Infinity
值处理])
param
num
要向上舍入的值param
precision
number
=0
精度(负数就是想整数部分取整)returns
number
divide
description
相除param
dividend
number
除数param
divisor
number
被除数returns
number
商
floor
description
向下取整(没有对number
边界值[Infinity
值处理])
param
num
待向下舍入的值param
precision
精度 (负数就是处理整数部分)returns
向下取整
max
description
求最大值(只会判断有效值), 只会统计number
|string
类型的数值param
list
数组returns
最大值
maxBy
description
求最大值param
list
要迭代数组param
itteratee
迭代函数 /key
returns
最大值
mean
description
求平均值param
list
要迭代的数组returns
平均值
meanBy
description
求平均数param
list
要迭代的数组param
itteratee
迭代函数 /key
returns
平均数
min
description
求最小值param
list
要迭代的数组returns
最小值
minBy
description
求最小值param
list
要迭代的数组param
itteratee
迭代函数 /key
returns
最小值
sum
description
求和param
list
要迭代的数组returns
总和
sumBy
description
求和param
list
要迭代的数组param
itteratee
迭代函数 /key
returns
总和
multiply
description
相乘param
augend
number
乘数param
addend
number
被乘数returns
积
number
isFloat
description
判断数是否为浮点型param
num
待检测的数据类型returns
boolean
random
description
随机数param
lower
{number
} 下限param
upper
{number
} 上限param
floating
{number
=0
} 是否返回浮点数(位数),0:
整数
spLength
description
指定长度param
value
any
param
min
=0
param
max
number
returns
string
isNumber
description
是否为数字param
value
any
returns
boolean
isEffectNumber
description
是否为js
的有效区间的数, 非number
类型都为false
param
num
any
returns
boolean
toNumber
description
将值转换为Number
, 不可以正确装换的值, 均返回0
param
value
any
待转换的数值returns
number
toFloat
description
转换为指定位数的浮点数param
num
{number
} 数字param
fixed
{number
} 小数点位数returns
{number
}
getDecimal
description
获取小数点位数param
num
{number
}returns
{number
=0
}
clamp
description
限制在lower
和upper
之间param
num
待限制的值param
lower
下限param
upper
上限returns
返回被限制的值
inRange
description
判断是否在该范围param
num
要检查的值param
start
=0
开始范围param
end
结束范围(包含该值)returns
boolean
between
description
判断值是否在两值之间param
num
number
待判断值param
start
=0
起始值param
end
number
结束值(不包含该值)returns
boolean
round
description
数字四舍五入,保留n
位小数param
number
number
待处理数值param
n
number
=0
四舍五入的位数returns
toThousands
description
数字每千位加逗号param
num
string|number
returns
string
object
existKeys
description
判断对象是否拥有指定keys
param
obj
object
param
keys
string[]
|string
returns
boolean
isObject
description
判断是否为Object
param
value
returns
boolean
serialize
description
序列化对象param
query
object
param
encode
boolean
=false
returns
string
omitRecord<T
extends
Record<string
, any>
= Record<string
, any>>
description
忽略object
属性param
record
T
param
propertys
string[]
returns
T
string
hide
description
隐藏指定位置的字符param
target
待替换子串param
start
=0
开始位置param
end
=target.length
returns
string
replaces
description
同时定义多个replace
的规则使用param
target
string
param
regs
{reg:
RegExp
|string
,value:
string
}[]
returns
string
isString
description
是否为字符串param
val
any
returns
boolean
reverseString
description
反转字符串param
target
string
return
string
isJsonString<T>
description
判断是否为json
字符串, 若是并返回处理后的对象param
val
待判断字符串returns
T
|false
toString
description
转换为字符串param
value
any
returns
string
toStrings
description
转换为字符串数组param
value
any[]
returns
string[]
time
toDate
description
字符串装换成Date
对象param
value
string
可以转换成时间的字符串returns
{Date
}
deadline
description
倒计时param
target:Date
目标时间param
timeKey?:
'year
' | 'mouth
' | 'day
' | 'hour
' | 'minute
' | 'second
' | 'timeStamp
' 指定倒计时单位param
now?:Date
起始时间returns
{number
}
isDate
description
检查日期是否有效, 时间戳也为有效时间(13
位)param
date:any
待判断日期returns
boolean
format
description
时间格式化param
time:number|string|Date
时间param
pattern?:string
格式returns
string
格式化后的数据
符号 | 结果 | 描述 |
---|---|---|
YYYY | 2022 | 4 位数字的年份, 忽略大小写 |
YY | 1 -14 | 2 位数字的年份, 忽略大小写 |
M MM | 1 -12 | 月份数字 |
D DD | 1 -31 | 日数, 忽略大小写 |
H HH | 0 -23 | 24 小时制 |
h hh | 1 -12 | 12 小时制 |
m mm | 0 -59 | 分钟 |
s ss | 0 -59 | 秒钟 |
isSameDate
description
时间是否相同, 时间类型支持isDate
的类型param
timeA
比较时间param
timeB
被比较时间returns
{boolean
}
util
description
超时时间default
3000
description
最大执行次数default:
1000000
ban<Params
extends
[]
, Return>
description
限制 方法的超时和执行次数param
func
Func<Params
,Return>
param
config
BanConfig
returns
function
(...args:
Params):
Return
asyncBan<Params
extends
[]
, Return>
param
func
AsyncFunc<Params
,Return>
param
config
BanConfig
returns
function
(...args:
Params):
Return
catchError<Params
extends
[]
, Return>
param
func
Func<Params
,Return>
param
errorReturnValue
Return
returns
function
(...args:
Params):
Return
asyncCatchError<Params
extends
[]
, Return>
param
func
AsyncFunc<Params
,Return>
param
errorReturnValue
Return
returns
async
function
(...args:
Params):
Return
throwError<<Params
extends
any[]
, R
= any>
param
func:
(...args:
Params)
=>R
待捕获错误的函数param
isErrorResult
:R
returns
(...args:Params)
=>R
asyncThrowError<<Params
extends
any[]
, R
= any>
description
异步处理param
func:
(...args:
Params)
=>R
待捕获错误的函数param
isErrorResult
:R
returns
(...args:Params)
=>R
changeCase
description
字符转换type:
FirstUpper:
首字母大写FirstLower
:首字母小写Upper
:全部大写Lower
:全部小写
param
str
string
param
type
number
returns
string
isEmpty
description
判断是否为无效值undefined
,null
,NaN
param
value
any
待判断值returns
boolean
runFunc
description
运行函数, 支持普通函数和async
函数, 否则返回func
param
func
param
...args
returns
IsEndOfStrings
description
是否为指定字符串结尾param
fileName
string
param
list
string[]
returns
boolean
isImage
param
fileName
string
returns
boolean
isH5Videos
param
fileName
string
returns
boolean
isPdf
param
fileName
string
returns
boolean
isWord
param
fileName
string
returns
boolean
siExcel
param
fileName
string
returns
boolean
logGroup
description
分组打印(简化console.groupCollapsed)
param
{string
}name
分组名称param
{unknown[]
}...args
需要分组打印的结果example
logGroup(name[
,...args])
return
boolean
matchValue
param
val
被比较值param
valer
比较值 / 可为正则param
path
值的路径 用逗号隔开returns
boolean
equal
description
比较是否值和类型是否相等param
value
any
param
lastValue
any
returns
toPathValue
description
通过path
来获取值param
val
待取值param
path
string
路径 (若路径有.
可用\\.
代替)returns
通过路径获取对应值
type
description
获取类型param
any
参数return
string
类型名称
types
description
获取类型数组param
params
any[]
待判断的参数列表param
hasRepeat
=false
保留重复类型return
string[]
类型名称
2.2.0-beta.0
1 year ago
2.1.12
2 years ago
2.1.11
2 years ago
2.1.2
2 years ago
2.0.3
2 years ago
2.1.1
2 years ago
2.0.2
2 years ago
2.1.4
2 years ago
2.0.5
2 years ago
2.1.3
2 years ago
2.0.4
2 years ago
2.1.6
2 years ago
2.0.7
2 years ago
2.1.5
2 years ago
2.0.6
2 years ago
2.1.8
2 years ago
2.1.7
2 years ago
2.1.0
2 years ago
2.0.1
2 years ago
2.0.0
2 years ago
2.1.9
2 years ago
2.1.9-Alpha.7
2 years ago
2.1.9-Alpha.6
2 years ago
2.1.10
2 years ago
1.0.3
2 years ago
1.0.2
2 years ago
1.0.1
2 years ago
1.0.0
2 years ago
0.0.13
2 years ago
0.1.1
2 years ago
0.0.12
2 years ago
0.0.10
2 years ago
0.0.9
2 years ago
0.0.8
3 years ago
0.0.7
3 years ago
0.0.5
3 years ago
0.0.4
3 years ago
0.0.3
3 years ago
0.0.2
3 years ago
0.0.1
3 years ago