timespanjsJavascript 日期差值显示库
timespanjs 是实现日期差值的人性化显示的 Javascript 库。比如,可以显示成:2年2个月2小时4分钟23秒。同时支持国际化,可扩展。已经支持的语言:
-
中文简体(zh-cn)
-
中文繁体(zh-tw)
-
英文(en)
如何使用
-
通过script标签引入timespanjs脚本文件。如果使用requirejs,则需要通过require.config配置timespan路径。
-
创建Timespan对象。可以通过构造函数中传递时间差值创建,也可以通过传递两个Date对象实例创建。
-
调用humanize实例方法,获取人性化显示字符串。
-
调用Timespan.lang(),设置语言。
浏览器下的引用
<script src="timespan.js"></script><script> var ts=new Timespan(85,'m');</script>
requirejs下的引用
require.config({ paths: { "timespanjs": "path/to/timespan", }});define(["timespanjs"], function (Timespan) { var ts=new Timespan(85,'m');});
node.js下的引用
调用示例:
//该值表示为: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。
依赖
不需要依赖其他库。
评论