1.0.5 • Published 4 years ago
prime-utils.js v1.0.5
prime-utils.js
介绍
简洁而常用的原生js库,目前分四个方向,后期会加上校验功能。
安装
npm install prime-utils.js
目录
使用
数据处理
- 对象数组递归操作
//对象数组中的字符串去空格
//value的类型包括:object,array,string,number,date等等
let newobj = $$.objectUtil.trim(value);
//对象数组删除空属性 '',[],{},null,undefined
let newobj = $$.objectUtil.delNull(value);
//对象数组既删除空属性,又去空格
let newobj = $$.objectUtil.delNullAndTrim(value);
//深度克隆 对象数组
let newobj = $$.objectUtil.clone(value);
//对象数组中字符串的操作 callbackobj = {datefn: '',strfn: '',numfn: ''}
let newobj = $$.objectUtil.encodeData(value,callbackobj,isDelNull);
- 对象序列化与反序列化
let str = $$.objectUtil.stringfyQueryString(obj);
let obj = $$.objectUtil.parseQueryString(url);
数字与金额
//金额每三位添加,号。 value: number,string
let str = $$.numberUtil.moneyDelimiter(value);
//数字小写转大写
let str = $$.numberUtil.digitUppercase(number);
//生成指定范围的数字
let number = $$.numberUtil.randomNum(min, max);
时间处理
- 日期处理
//距离现在过去多少时间
//eg:刚刚、分钟前、小时前、天前、个月前、年前、
let date = $$.timeUtil.formatPassTime(startTime);
//距离结束的时间 eg:1天2小时30分钟30秒 或1d2h30m30s(为了方便大家截取)
let str = $$.timeUtil.formatRemainTime(endTime,isEn);
//某月共有多少天
//某月最后一天是几号
let date = $$.timeUtil.getEndDate(month,year);
功能函数
/**
* 函数节流。
* 适用于限制`resize`和`scroll`等函数的调用频率
*
* @param {Number} delay 0 或者更大的毫秒数。 对于事件回调,大约100或250毫秒(或更高)的延迟是最有用的。
* @param {Boolean} noTrailing 可选,默认为false。
* false: 在delay时间内连续触发,最后一次触发后delay时间后执行
* true: 在delay时间内连续触发,先执行后延续delay秒
*
* @param {Function} callback 延迟毫秒后执行的函数。`this`上下文和所有参数都是按原样传递的,
* 执行去节流功能时,调用`callback`。
* @param {Boolean} debounceMode 如果`debounceMode`为true,`clear`在`delay`ms后执行。
* 如果debounceMode是false,`callback`在`delay` ms之后执行。
* true: 先执行一次,最后触发delay秒内不执行,
* false: delay秒之后执行一次
*
* @return {Function} 新的节流函数
*/
$$.functionUtil.throttle(delay, noTrailing, callback, debounceMode)
eg:
window.addEventListener('click',$$.functionUtil.throttle(2000,false,function(){
console.log(1);
},false))