timespanjs 介绍
timespanjs 是实现日期差值的人性化显示的 Javascript
库。比如,可以显示成:2年2个月2小时4分钟23秒。同时支持国际化,可扩展。已经支持的语言:
-
通过script标签引入timespanjs脚本文件。如果使用requirejs,则需要通过require.config配置timespan路径。
-
创建Timespan对象。可以通过构造函数中传递时间差值创建,也可以通过传递两个Date对象实例创建。
-
调用Timespan.lang(),设置语言。
<script src="timespan.js"></script><script> var ts=new Timespan(85,'m');</script>
require.config({ paths: { "timespanjs": "path/to/timespan", }});define(["timespanjs"], function (Timespan) { var ts=new Timespan(85,'m');});
调用示例:
//该值表示为:3小时4分钟25秒30毫秒 var msvalue = 30 + 1000 * 25 + 1000 * 60 * 4 + 1000 * 60 * 60 * 3; var ts = new Timespan(msvalue, 'ms'); console.log(ts.humanize()); //输出为:3小时4分钟25秒30毫秒 //通过fromDates方法构造 var dt=new Date(2014,7,1); var dt1=new Date(2014,8,1,10,12,15,234); var ts = Timespan.fromDates(dt, dt1); console.log(ts.humanize()); //输出:1个月1天10小时12分钟15秒,234毫秒未输出,因为baseUnit参数默认是:'s'Timespan.lang('en'); console.log(ts.humanize()); //输出:1 month,1 day,10 hours,12 minutes,15 seconds
见https://github.com/houyhea/timespanjs/blob/master/test/testTimespan.html。请获取并运行即可。
兼容IE8+,chrome,firefox。
依赖
不需要依赖其他库。