动态数字:
API:

* @param num 数字,可以是小数或百分数

* @param isThd 是否千分位化(可选),默认 true

* @param delay 动画延时时长(可选),默认 500

* @param grain 粒度,在规定时间内数字变化次数(可选),默认 100

$( " 选择器 "). animateNum( num, isThd, delay, grain);

使用方法:

$("选择器").animateNum(12345);

$("选择器").animateNum("348245.5323");

$("选择器").animateNum("68.46%");

$("选择器").animateNum("$45878.235");

$("选择器").animateNum("上升153253.245值",false,1000);

使用案例:

千分位:
动画时长(ms):
时间操作工具:
API(未具体罗列,具体看 js 文件注释):

* @param format 必选,时间格式,为空则使用默认格式 "yyyy-MM-dd HH:mm:ss"

TimeTool. setFormat(format);


* 以下 get**Time方法 只是举例,还有类似其他的未全部罗列

* @param num 粒度,正数即日期向后,负数即日期向前。含有before或after的方法该值都为正数

* @param type 时间类型,有 month(或 1),day(或 2),hour(或 3),min(或4),sec(或 5),ms(或 6);默认:day(或 2)。

* @param time 时间(兼容字符串,整型和日期Date类型),可选,如果为空则使用系统当前时间

* @param format 可选,时间格式,为空则使用默认格式 "yyyy-MM-dd HH:mm:ss"

* @param objType 可选,返回的数据类型,可选参数,默认:string,另外还有number和date;如果非string类型则format参数无效。

TimeTool. getTime(num, type, time, format, objType);

TimeTool. getBeforeTime(num, type, time, format, objType);

TimeTool. getAfterHour(num, time, format, objType);

TimeTool. getBeforeMonth(num, time, format, objType);

TimeTool. now(format, objType);


* @param startTime 开始时间

* @param endTime 结束时间,注:开始时间大于结束时间则返回负数

* @param type 时间类型,有 month(或 1),day(或 2),hour(或 3),min(或4),sec(或 5),ms(或 6);默认:day(或 2)。

TimeTool. countTime(startTime,endTime,type);

ps:我没有深入学习过day.js和moment.js,只是粗略的看了一下,感觉操作好麻烦,太多学习成本,所以写了一个简单的。

使用方法:

TimeTool. getTime(5, "hour", "2019-05-23 15:42:25"); // 获取 2019-05-23 15:42:25 后5个小时的时间 => 2019-05-23 20:42:25

TimeTool. getTime(-5, "hour", "2019-05-23 15:42:25"); // 获取 2019-05-23 15:42:25 前5个小时的时间 => 2019-05-23 10:42:25

TimeTool. getTime(-5, "hour", "2019-05-23 15:42:25","yyyyMMddHH"); // 获取 2019-05-23 15:42:25 前5个小时的时间 => 2019052310

TimeTool. getTime(-5, "hour", "2019-05-23 15:42:25","yyyy-MM-dd HH:00"); // 获取 2019-05-23 15:42:25 前5个小时的时间 => 2019-05-23 10:00

TimeTool. getBeforeTime(5, "hour", "2019-05-23 15:42:25"); // 获取 2019-05-23 15:42:25 前5个小时的时间 => 2019-05-23 10:42:25

TimeTool. getAfterHour(5, "2019-05-23 15:42:25"); // 获取 2019-05-23 15:42:25 后5个小时的时间 => 2019-05-23 20:42:25

TimeTool. getBeforeMonth(5, "2019-05-23 15:42:25"); // 获取 2019-05-23 15:42:25 前5个月的时间 => 2018-12-23 15:42:25

TimeTool. now(); // 获取当前时间

TimeTool. countTime("2017-05-23 15:42:25", "2019-11-23 15:42:25", "day"); // 计算 2017-05-23 15:42:25和2019-11-23 15:42:25 两个时间相差多少天

使用案例:
设置全局时间格式:  // 注意:如果输入的时间和全局时间格式不符合会抛异常,异常信息看控制台打印
时间: 粒度: 类型: 结果:
时间: 粒度: 类型: 结果:
时间: 粒度: 类型: 输出格式: 结果:  // 注:输出格式为空则使用全局默认格式
开始: 结束: 类型: 结果:  // 注:范围是向下取整,如2.6天算2天
颜色操作工具:
API:

注:该工具不支持 rgba 颜色(因为透明颜色是需要结合父节点上的背景颜色才能转换的,父节点颜色未知)

* @param color 颜色值,可以是十六进制颜色,英文名称颜色,rgb颜色

ColorTool. toRGB(color);

ColorTool. toHEX(color);


* @param colors 颜色数组(可以是一个颜色值,将会使用白色与其配色;必须),可以是rgb,十六进制值,或英文名称值

* @param minNum 最小值(可选),默认值:0;

* @param maxNum 最大值(可选),默认值:1000;

* @param density 密度(可选),默认值:30;含义:把颜色范围分成30层,越高,色差越小

ColorTool. createRange(colors, minNum, maxNum, density); 插件-以值取色

使用方法:

ColorTool.toRGB("#ffffff");

ColorTool.toRGB("blue");

ColorTool.toHEX("rgb(24,35,34)");

ColorTool.toHEX("red");

使用案例:
颜色: 结果:
颜色: 结果:
颜色: 结果:
颜色: 结果:

问题一:假设 3000 对应 红色,100 对应 绿色,而且中间是绿色 >> 黄色 >> 红色的渐变。求 888 对应什么颜色

创建对象:var range = ColorTool.createRange(["green","yellow","red"],3000,100);

获取颜色:var rgb = range.getRGB(888);

问题二:需求改变,2000 对应 红色,250 对应 绿色,求 888 对应什么颜色

获取颜色:var rgb = range.getRGB(888,2000,250); //不需要再创建对象,但该范围只是当前一次有效

使用:

颜色: MAX: MIN: 测值: 结果:
应用实例:
其他小工具:
Json 数组排序:
    var list = [
        {key1: 1, key2: "a", key3: "我"},
        {key1: 2, key2: "b", key3: "是"},
        {key1: 3, key2: "c", key3: "程"},
        {key1: 4, key2: "d", key3: "序"},
        {key1: 5, key2: "e", key3: "员"}
    ];

    list.sortArray("key1", "desc");// 以 key1 字段倒序排序
    list.sortArray("key2");// 以 key2 字段正序排序,排序的默认值:asc
    list.sortArray("key3", "asc");// 以 key3 字段正序排序
    list.shuffleArray();// 打乱排序
    // 注:sortArray和shuffleArray 方法主要是对 Array.sort() 方法的进一步扩展
    var sum = list.sumArray("key1");// 对 key1 字段进行相加,当前结果:15
            
格式千分位:
    var str = "12345678.54321";
    var val = 23456789.6543;

    var newStr = toThd(str);//注意:返回值是字符串类型
    newStr = toThd(val);