@dusky/ts-common
v1.1.4
Published
typescript common tools and language extension
Downloads
5
Maintainers
Readme
#ts-common
项目作用
为typescript编程添加常用到的工具函数。 该工程用于编写、测试、文档和发布功能。
如何使用
npm install -D @dusky/ts-common
import "@dusky/ts-common"
项目结构
- /docs/ 生成文档工程
- /res/ API导图等资源
- /src/ 源码...
- /src_candidates/ 候选暂存...
- /tests/ 测试用例合集
- /dist/ 发布(index.js,index.d.ts)
api列表
全局函数扩展
isArr
判断目标是否为数组isBool
判断目标是否为布尔值isEmpty
判断目标是否为内容空值isFunc
判断目标是否为函数isNullish
判断目标是否为空值isNum
判断目标是否为数值isObject
判断目标是否为对象类型isPrimitive
判断目标是否为原生类型isRGB
判断目标是否为RGB颜色值isRGBA
判断目标是否为RGBA颜色值isStr
判断目标是否为字符串isEqual
判断目标是否为内容上相等notEmpty
判断目标是否非内容空值notEmptyArr
判断目标是否为非空数组
对象类型扩展
对象类
Object.enumKeys
获得枚举对象的所有键名Object.enumValues
获得枚举对象的所有取值Object.deepGet
深度获取对象的属性值Object.clean
清空对象的空值、空字符串的属性Object.clone
浅克隆(复制)对象Object.deepClone
深克隆(复制)对象Object.set
为对象设置属性assign
为对象(指定键)赋值assignExcept
为对象(指定键以外)赋值
对象实例
obj.hasOwn
判断目标是否自身拥有某属性
数组类型扩展
数组类
Array.fill
生成一个新的填充数组Array.nature
生成一个自然数序列数组Array.flatten
扁平化数组
数组实例(返回类型非自身)
arr.head
获取数组首元素arr.tail
获取数组末元素arr.heads
返回数组前多个元素所组成的数组arr.tails
返回数组末多个元素所组成的数组arr.copy
拷贝原素组并返回新数组arr.loopAt
循环获取下标值arr.random
从数组随机取得值arr.contains
判断数组是否包含某(些)值arr.excludes
判断数组是否不包含某(些)值arr.all
判断数组是否全部为某(些)值arr.notAll
判断数组是否不全部为某(些)值arr.containsInstance
判断数组是否包含某(些)类型实例(之一)arr.allInstance
判断数组是否全部是某(些)类型实例
数组实例(返回自身)
arr.unique
去除数组中的重复元素arr.clean
去除数组中的空值和空字符串元素arr.insert
为数组插入某(些)值arr.delete
删除数组指定数量的元素arr.remove
移除数组中所有某(些)值arr.exchange
交换数组指定下标值arr.pushUnique
从头部加入某(些)值,数组含有的值不会重复添加arr.unshiftUnique
从末尾加入某(些)值,数组含有的值不会重复添加arr.descBy
按照数组内对象指定属性数值降序重排数组arr.shuffle
数组洗牌arr.swingCut
数组切牌
数组实例(数值数组)
arr.max
获取数组内最大值arr.min
获取数组内最小值arr.asc
数值升序重排数组arr.desc
数值降序重排数组
函数类型扩展
Function.sleep
等待指定时间Function.invoke
执行指定函数Function.wait
等待指定时间执行指定函数
字符类型扩展
String.Length
计算字符串实际长度(中文为2,英文和数字符号为1)String.ellipsis
截取字符串并补充省略号到指定长度String.uuid
生成一个随机UUIDString.random
(在指定范围内)生成随机字符串String.reverse
反转字符串String.isChinese
判断目标是否为纯中文字符串String.isLetters
判断目标是否为纯英文字母String.isNumeric
判断目标是否为纯数值字符串
集合工具扩展
Array.merge
求合集(不去重)Array.union
求并集(去重)Array.intersection
求交集(不去重)Array.subtraction
求差集(不去重)Array.symComplement
求对称补集(不去重)
数学工具扩展
Math.randomRange
在指定范围内随机数Math.randomInt
在指定范围内随机整数Math.randomBool
(按指定比例)随机布尔值Math.parseDegree
弧度转角度Math.parseRadian
角度转弧度Math.sum
求算数和Math.sumSqr
求平方和Math.avg
求算数平均数Math.percentage
求百分比整数(0-100)Math.lerp
在两个数值间按比例插值Math.clamp
在范围内截断数值Math.clamp01
在0-1内截断数值数字工具扩展
Number.fix
保留指定位小数Number.precise
保留指定有效位
API全景图
...
查看文档
打开docs/index.html即可。
测试用例
测试用例在/tests的对应文件夹下。 运行命令:
npm run test