Github地址:https://github.com/hustcc/timeago.jshtml
项目主页:http://timeago.org/git
timeago.js 是一个很是简洁、轻量级、小于
2kb
的很简洁的Javascript库,用来将datetime时间转化成相似于*** 时间前
的描述字符串,例如:“3小时前”。github
本地化支持,默认自带中文和英文语言,基本够用;npm
以前 xxx 时间前、xxx 时间后;浏览器
支持npm方式和浏览器script方式;测试
测试用例完善,执行良好;网站
关于Python的版本,能够看 timeago.ui
刚刚 12秒前 3分钟前 2小时前 24天前 6月前 3年前 12秒后 3分钟后 2小时后 24天后 6月后 3年后
1. 下载 timeago.js spa
npm install timeago.js
2. 引入 timeago.js code
使用import引入,而后能够获得一个全局变量: timeago
.
import timeago from 'timeago.js'; // 或者 var timeago = require("timeago.js");
或者直接经过 script
标签引入到html文件中.
<script src="dist/timeago.min.js"></script>
3. 使用 timeago
类
var timeago = timeago(); timeago.format('2016-06-12')
1. 本地化
默认的语言是英文 en
, 这个库自带语言有 en
and zh_CN
(英文和中文).
var timeago = timeago(); timeago.format('2016-06-12', 'zh_CN');
2. 注册本地语言
你能够本身自定义注册 register
你本身的语言. 以下所示,全部的键值都必须存在,否则可能会出错. e.g.
// 本地化的字典样式 var test_local_dict = { 'JUST_NOW': ["just now", "a while"], 'SECOND_AGO': ["%s seconds ago", "in %s seconds"], 'A_MINUTE_AGO': ["1 minute ago", "in 1 minute"], 'MINUTES_AGO': ["%s minutes ago", "in %s minutes"], 'AN_HOUR_AGO': ["1 hour ago", "in 1 hour"], 'HOURS_AGO': ["%s hours ago", "in %s hours"], 'A_DAY_AGO': ["1 day ago", "in 1 day"], 'DAYS_AGO': ["%s days ago", "in %s days"], 'A_MONTH_AGO': ["1 month ago", "in 1 month"], 'MONTHS_AGO': ["%s months ago", "in %s months"], 'A_YEAR_AGO': ["1 year ago", "in 1 year"], 'YEARS_AGO': ["%s years ago", "in %s years"] } var timeago = timeago(); timeago.register('test_local', test_local_dict); timeago.format('2016-06-12', 'test_local');
3. 设置相对日期
timeago
默认是相对于当前事件的,固然也能够本身设置相对的时间,以下所示:
var timeago = timeago('2016-06-10 12:12:12'); // 在这里设置相对时间 timeago.format('2016-06-12', 'zh_CN');
4. 格式化时间戳
timeago().format(new Date().getTime() - 11 * 1000 * 60 * 60); // will get '11 hours ago'
一个网站的展现页面
MIT