被遍历的数组
目标元素
返回数组中指定下标间隔的元素,首先选取第一个元素,然后跳过间隔数 -1 的元素选取下一个,以此类推。
被遍历的数组
指定的下标间隔
在一个对象数组中,根据指定的 value
找对应的 label
(如果有多个,返回第一个),如果没找到,返回 undefined
。
通常配合组件库的选择器使用。
对象数组
指定的 value
在一个对象数组中,根据指定的 key
和 value
,查找对应的元素(使用深比较,返回第一个),并返回其 anotherKey
对应的值,如果没找到,则返回 undefined
。
对象数组
要查找的指定的 key
要查找的指定的 value
需要返回的值对应的 key
在一个对象数组中,根据指定的 label
找对应的 value
(如果有多个,返回第一个),如果没找到,返回 undefined
。
通常配合组件库的选择器使用。
对象数组
指定的 label
判断一个数组是否为另一个数组的子集,可通过参数来区分浅比较(SameValueZero)和深比较。
需要判断的数组
被判断的数组
是否深比较,默认为 true
判断数组是否包含有相同元素,可通过参数来区分浅比较(此时使用 SameValueZero 算法)和深比较。
要检查的数组
是否深比较,默认为 true
复制 HTML,一般用于富文本编辑器的场合。
被复制的 HTML 字符串
复制文本,兼容 IE9(需要 Promise Polyfill)。
被复制的文本
判断元素是否在浏览器可视范围内,分为部分可见(默认)和完全可见两种情况。
被观察的元素
该元素是否「完全可见」才符合「可视范围」的标准,默认为 false
异步地获取一些值。
在有些场景时,一些值无法通过同步的方法拿到,甚至异步的方法也不行,只能通过轮询。
具体也就是说,每隔一段时间(默认 50ms)看一下值有没有获取到,获取到返回包裹该值的 Promise,并就关掉定时器。
获取值的方法
间隔时间,默认 50ms
排除值列表,默认为 [null, undefined],只有返回值不在该列表中才认为获取到,使用 includes 方法判断
将 URL 片段与当前域名拼合,组成完成 URL。
URL 片段,为域名后面的内容(不包含开头的斜杠)
获取 URL 参数中指定名称对应的值,如果没找到,返回 undefined
。
参数名
动态引入 JS CDN 文件,返回一个 Promise,当加载完毕时为 resolve
状态,加载失败后为 reject
。
其中配置的 defer
和 async
对应 <script>
标签的两种属性。
JS 文件地址
配置
是否异步加载,默认为 true
是否延迟加载,默认为 true
动态引入 JS 字符串,返回一个 Promise,当加载完毕时为 resolve
状态,加载失败后为 reject
。
其中配置的 defer
和 async
对应 <script>
标签的两种属性。
JS 字符串
配置
是否异步加载,默认为 true
是否延迟加载,默认为 true
一些业务场景,如弹框出现时,需要禁止页面滚动,这是兼容安卓和 iOS 禁止页面滚动的解决方案。
该函数返回另一个函数闭包,其存储了当前页面滚动位置,再次执行可以恢复页面状态。
将页面平滑滚动到顶部。
滚动持续的时长(单位为毫秒,默认为 1000)
Promise 形式的等待,等待指定毫秒数后 resolve 空值。
毫秒数
Promise 形式的等待,与 wait
不一样的是,它等待的单位是秒。
秒数
是否是 Android 系统,原理是检查 UA 中是否包含 android
。
是否是移动端,原理是检查 UA 中是否包含 android
、webos
、iphone
、ipad
、ipod
或 blackberry
。
是否是桌面端,原理是不匹配移动端的就是桌面端。
是否是 QQ 浏览器,原理是检查 UA 中是否包含 mqqbrowser
、qzone
、qqbrowser
或 qbwebviewtype
。
是否是爬虫,原理是检查 UA 中是否包含各大 bot 的关键词。
是否是微信浏览器,原理是检查 UA 中是否包含 micromessenger
。
是否是微信小程序环境(包括微信开发者工具),原理是检查 UA 中是否包含 miniprogram
。
是否是 iOS 系统,原理是检查 UA 中是否包含 iphone
、ipad
或 ipod
。
将 #RRGGBB 或 #RGB 字符串转换成红、绿、蓝三种颜色分量的数组
颜色字符串
将传入的红、绿、蓝三种颜色分量转换成标准的 #RRGGBB 字符串,可选是否使用短字符串(#RGB)
红色
绿色
蓝色
默认为 false,是否使用短字符串
获取两个日期的间隔天数
起始日期
结束日期
取得指定时间所在月份的天数,如果不传参,则指定当前时间
指定时间
获取指定时间所在月的第一天,如果不传参,则指定当前时间
指定时间
获取指定时间所在季度的第一天,如果不传参,则指定当前时间
指定时间
获取指定时间所在月的最后一天,如果不传参,则指定当前时间
指定时间
获取指定时间所在季度的最后一天,如果不传参,则指定当前时间
指定时间
获取当前月份的周数,取决于每周是从周日开始(默认)还是从周一开始
指定时间
若设为 0
(默认值),则每周从周日开始,设为 1
则为从周一开始
判断指定时间是否是闰年,如果不传参,则判断当年
指定时间
检测密码强度,规则为出现数字、大写字母、小写字母、下划线分别加一分,返回总分。
被检测的密码
将 URL Pattern 表达式转成正则表达式,URL Pattern 的语法参考这里。
URL Pattern 字符串
将阿拉伯数字转换成中文数字,可以转换成小写(默认)或大写(银行数字用的那种)。
被转换的阿拉伯数字
是否采用大写数字,默认为 false
去掉 HTML 标签。
要转换的字符串
生成一个数字验证器,以验证特殊(不超过特定值及小数点位数)的数字格式。
最大值
小数位数,默认为 0
是否允许为负数,默认为 false
验证 12 小时制时间格式(hh:mm:ss)。
验证 24 小时制时间格式(HH:mm:ss)。
验证 A 股代码,规则为 sh / sz / SH / SZ 后面跟六位数字。
验证银行卡号。
验证 base64 字符串。
验证车牌号。
验证中文。
验证中文名。
验证日期字符串,允许中间用横杠或点连接。
验证 ed2k 地址。
验证邮箱格式
验证英文。
验证小写字母。
验证英文名。
验证大写字母。
验证手机机身码,规则为 15 ~ 17 位数字。
验证 IPv4 地址。
验证 IPv6 地址。
验证身份证号码。
验证图片地址。
验证整数字符串。
验证 Java 包名。
验证 Linux 文件地址。
验证 Linux 文件夹地址。
验证 Linux 隐藏文件地址。
验证 Linux 路径,包含文件地址和文件夹地址。
验证 md5,规则为 32 位十六进制数字(字母需要全大写或全小写)。
验证 MAC 地址,十六进制数字支持大小写(但只能为大写或小写),分隔符支持冒号和横杠。
验证磁力链接。
验证手机号,根据工信部 2019 年最新公布的手机号段
验证金额,规则为整数或两位小数。
验证新能源车车牌号。
验证非新能源车车牌号。
验证数字字符串,不包含前导零。
验证护照号码。
验证路径,包含 Linux 和 Windows 的文件地址和文件夹地址。
验证电话号码,规则为可选的区号(3 或 4 位)加横杠,后跟 7 或 8 位数字
验证邮政编码。
验证 QQ 号,规则为 5 ~ 10 位的整数,其中第一位不能为零。
验证迅雷地址。
验证火车车次,规则为 GCDZTSPKXLY
或非零数字开头,后面跟 1 ~ 4 位数字。
验证 URL 地址
验证用户名,规则为大写字母、小写字母和数字,4 ~ 16 位。
验证语义化版本号,规则为三个以点号为分隔的数字,后面跟可选的横杠与 alpha / beta / rc 三个单词,再跟可选的点号和数字。
验证视频地址。
验证微信号,规则为长度 6 ~ 20 位,以字母开头,后面可以跟字母,数字,横杠,下划线。
验证 Windows 文件地址。
验证 Windows 文件夹地址。
验证 Windows 路径,包含文件地址和文件夹地址。
确保数值在最值闭区间之内,如果超出限界,则置换为离它最近的最大值或最小值
要检查的值
最小值范围
最大值范围
求出距离指定数值最近的那个数
要检查的值
最小值范围
最大值范围
将对象中的所有键小驼峰化,支持循环引用检查,用于前后端交互(以及后端与数据库交互)时的数据格式转换,支持对象数组。
被转换的对象或对象数组
将对象中的所有键大驼峰(Pascal Case)化,支持循环引用检查,用于前后端交互(以及后端与数据库交互)时的数据格式转换,支持对象数组。
被转换的对象或对象数组
将对象中的所有空值(默认为 null
, undefined
, ''
)移除,支持任意嵌套层级和深比较。
不支持循环比较(如 { a: { b: '' }, c: 1 }
在将 {}
和 ''
设为空值时只会移除 b
,此时 a
为 {}
但不会再次检查)。
此方法不会修改原对象。
被处理的对象
被认为是「空值」的列表,默认为 [null, undefined, '']
将对象 / 数组中的某个值(或满足某个条件的值,使用 SameValueZero 算法)替换成另一个值(或将原值处理后的值),支持任意嵌套层级和复杂类型深比较。
该方法不会修改原对象 / 数组。
replaceValueFromObject({ x: 1 }, 1, 2) // { x: 2 }
replaceValueFromObject({ x: 1 }, { x: 1 }, 2) // 2
replaceValueFromObject({ x: { y: 1 } }, { y: 1 }, 2) // { x: 2 }
replaceValueFromObject({ x: { y: 1 } }, 1, 2) // { x: { y: 2 } }
replaceValueFromObject([1, 2, 3, 1], 1, '3') // ['3', 2, 3, '3']
replaceValueFromObject([NaN, NaN, 2, 3], NaN, '3') // ['3', '3', 2, 3]
replaceValueFromObject([1, 2, 3, 1], v => v % 2 === 0, '3') // [1, '3', 3, 1]
replaceValueFromObject([1, 2, 3, 1], v => v % 2 === 0, y => y + 10) // [1, 12, 3, 1]
被转换的数组 / 对象
某个值,或满足值的条件函数,此时接收 obj
中的部分值
另一个值,或处理值的函数,此时接收 obj
中的部分值
当 from
和 to
是函数时,是否作为转换条件执行,默认为 true
,对于替换函数的特殊场景时需要置为 false
将对象中的所有键下划线化,支持循环引用检查,用于前后端交互(以及后端与数据库交互)时的数据格式转换,支持对象数组。
被转换的对象或对象数组
极差,为了与范围(range)区别,函数名设置为 distance
被统计的数据
标准差
被统计的数据
方差
被统计的数据
计算字符串所占的内存字节数,默认使用 UTF-8 的编码方式计算,也可指定为 UTF-16。
要计算的字符串
编码格式,支持 utf8 和 utf16,默认为 utf8
字节数
转义 SQL 字符串,在模板字符串前面使用。
具体转换规则为:
true
转换成 'true'
,false
转换成 'false'
。YYYY-MM-DD HH:mm:ss
对应的字符串。将字符串转换成大驼峰格式(Pascal Case)。
用于对字符串进行截断处理。当超过限定长度(默认是 30),默认添加 3 个点号。
目标字符串
限定长度
省略符
Generated using TypeDoc
检查给定数组中某元素出现的次数,采用
SameValueZero
算法来比较(与===
的区别为NaN
与NaN
相等)。